Question

Comment convertir un std :: chaîne encodée en ascii étendu à UTF8 en utilisant Visual Studio 2005 de Microsoft?

Je suis en utilisant un tampon de protocole google et il se plaint de caractères non UTF8 dans ma chaîne si je donne sans conversion, ce qui est vrai ...

Était-ce utile?

La solution

MultiByteToWideChar pour convertir votre chaîne en UTF-16, puis utilisez WideCharToMultiByte pour le convertir en UTF-8.

Autres conseils

Supposons que mystérieux ASCII Exntended est juste Latin1. Ensuite, utilisez un masque de wikipedia:

  

110Y YYXX 10xx xxxx

Puisque vous avez seulement 00..FF alors vous avez. 1100 00xx 10xx xxxx

algorithme de conversion sera suivant, si le code de caractères est <127 puis vider tout comme est, si elle est> 127, alors vous ne 0xC0 | ((x & 0xC0) >> 24) va à premier octet, le second est ((x & 0x3F) | 0x80)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top