Преобразовать байт [] в символ [] - PullRequest
48 голосов
/ 25 марта 2011

Как преобразовать массив byte в массив char в C #?

Ответы [ 3 ]

59 голосов
/ 25 марта 2011
System.Text.Encoding.ChooseYourEncoding.GetString(bytes).ToCharArray();

Замените правильную кодировку выше: например,

System.Text.Encoding.UTF8.GetString(bytes).ToCharArray();
15 голосов
/ 25 марта 2011

Вы должны знать кодировку источника.

string someText = "The quick brown fox jumps over the lazy dog.";
byte[] bytes = Encoding.Unicode.GetBytes(someText);
char[] chars = Encoding.Unicode.GetChars(bytes);
2 голосов
/ 25 марта 2011
byte[] a = new byte[50];

char [] cArray= System.Text.Encoding.ASCII.GetString(a).ToCharArray();

Из URL, который выложил диксон

http://bytes.com/topic/c-sharp/answers/250261-byte-char

Вы не можете ToCharArray байта, не преобразовав его сначала в строку.

Цитировать Jon Skeet там

Здесь нет необходимости копировать - просто используйте Encoding.GetChars.Однако нет гарантии, что ASCII будет подходящей кодировкой для использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...