gilou Modérateur Modosaurus Rex | kaillou38 a écrit :
si je demande la taille via un GetLength, _tcslen, strlen, j'obtiens le nombre de caractère. Ce dont j'ai besoin, c'est de la taille en octet, parce qu'il faut que je copie ca dans des descripteurs qui font max 255 octets.
|
D'après la doc microsoft, strlen donne le nb d'octets:
Citation :
However, strlen interprets the string as a single-byte character string, so its return value is always equal to the number of bytes, even if the string contains multibyte characters.
|
cf http://msdn.microsoft.com/en-us/li [...] s.80).aspx
Citation :
Un caractère de 3 octets indique plutôt un encodage en UTF-8, que Windows ne sait pas gérer nativement, mais que tu peux convertir en UTF-16, via la fonction MultiByteToWideChar.
|
L'intérêt de l'utf-8, c'est qu'il permet d'utiliser toutes les fonctions de la librairie C standard, les chaines étant des chaines C (suite d'octets terminée par un 0), bref d'avoir un minimum de modifications à apporter au code de son soft pour le rendre unicode, pour un certain type de softs.
A+, Message édité par gilou le 27-02-2013 à 13:49:48 ---------------
There's more than what can be linked! -- Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- Il ne faut plus dire Sarkozy, mais Sarkozon -- (╯°□°)╯︵ ┻━┻
|