Unicode.GetString в C#C#

Место общения программистов C#
Ответить
Anonymous
 Unicode.GetString в C#

Сообщение Anonymous »

Я столкнулся со странной проблемой при выполнении некоторых операций с массивом байтов вместе со строкой Юникода в C#. Ниже мой код.

Код: Выделить всё

var bytes = new byte[] {128, 216};
var strstr = Encoding.Unicode.GetString(bytes);
var newBytes = Encoding.Unicode.GetBytes(strstr);

Console.WriteLine(BitConverter.ToString(bytes));
Console.WriteLine(BitConverter.ToString(newBytes));
Довольно просто, правда? Однако newBytes — это не то же самое, что bytes, что меня шокировало. По моему мнению, GetString и GetBytes должны быть противоположными операциями. Может ли кто-нибудь сообщить мне, что это происходит?
Выход:

80-D8
FD-FF


Подробнее здесь: https://stackoverflow.com/questions/474 ... in-c-sharp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»