7
votes

C # Lire unicode?

Je reçois un message Unicode via le réseau, qui ressemble à:

74 00 65 00 73 00 74 00 3f 00

J'utilise un binaryReader pour lire le flux de ma prise, mais le problème est qu'il n'offre pas une fonction "Readwidstring", ni quelque chose de similaire à celui-ci. Quelqu'un une idée de comment traiter cela?

Merci!


0 commentaires

3 Réponses :


8
votes

Cordes en C # sont Unicode par défaut. Essayez xxx

où les données sont une matrice d'octet [] contenant vos données Unicode. Si vos données sont grandes Endian, vous pouvez essayer xxx


1 commentaires

Chaque octet tous les 2 est égal à 0, il est plutôt improbable que ce soit UTF-8.



16
votes

simple! xxx

tableau est votre éventail d'octets.


0 commentaires

5
votes

Vous pouvez utiliser un streamreader comme ceci: xxx

si votre flux ne contient que des lignes de texte, alors streamreader est plus approprié que BinaryReader . Si votre chaîne est intégrée aux données binaires intégrées, il est probablement préférable de décoder la chaîne à l'aide de la méthode coding.GetString, car d'autres ont suggéré


0 commentaires