4 ответов:
вы должны использовать кодировку (
System.Text.Encoding), чтобы сказать .NET, что вы ожидаете в качестве вывода. Например, в UTF-16 ( =System.Text.Encoding.Unicode):var result = System.Text.Encoding.Unicode.GetBytes(text);
сначала выясните, какую кодировку вы хотите: вам нужно знать немного о Unicode первый.
следующая работа, которая
System.Text.Encoding, что соответствует. Мой Core .NET refcard описывает большинство распространенных из них, и как получить экземпляр (например, статическим свойствомEncodingили вызывая aEncoding.GetEncoding.наконец, выясните, хотите ли вы все байты сразу (что является самым простым способом работы-вызов кодировка.GetBytes (string) один раз, и вы закончите) или вам нужно разбить его на куски - в этом случае вы захотите использовать кодировка.GetEncoder а затем кодировать немного за один раз. Кодировщик заботится о сохранении состояния между вызовами, например, если вам нужно прервать половину пути через символ.
какую кодировку вы используете? Конрад получил его в значительной степени вниз, но есть и другие там, и вы можете получить глупые результаты с неправильным:
byte[] bytes = System.Text.Encoding.XXX.GetBytes(text)здесь
XXXможно:ASCII BigEndianUnicode Default Unicode UTF32 UTF7 UTF8
Comments