Bonjour,

c'est une question très bête mais il m'est impossible de copier le contenu d'un char* dans un string. Voir à la fin du code, je n'arrive pas à copier le Byte* (c'est un unsigned char) dans mon string machin.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
Byte*		ATTR_payload;
	string		truc;
	string		machin;
 
	int i = 0;
 
	int nbRecords = 0;
	map <string, string> mapREC;
 
 
	for (rd_ptr = DB_POS_DB_REC; rd_ptr < db[dbNum].header.file_end; rd_ptr += sizeof (DbRecHdrType) + hdr.size)
	{
...
 
	if  (read(db[dbNum].file_desc, (char *)ATTR_payload, hdr.size ) ) { 				// reading the payload
			printf("payload : ");
			for (i = 0 ; i < hdr.size -1 ; i++)
				printf("%0X", ATTR_payload[i]);
			printf("\n");
 
		} else
			return HandleDBOpenError(dbNum, DB_RecordReadFailed, TRUE);
 
		strstream glop;				// conversion int to string dégueulasse
		glop << ATTR_tmp;
		glop >> truc;
		cout << "truc = " << truc << endl;
 
		machin.c_str() = ATTR_payload;
 
		nbRecords++;
 
	}
Des pistes, je suis preneur