Мое приложение получает Целочисленные значения для символов ISO 8859-1 по протоколу TCP и должно отображать его для тестирования в консоли. Для преобразования Int/байт в ISO 8859-1 строки, я взял код из принятого ответа this question:Консоль не отображает маленькие s с кароном при преобразовании в ISO 8859-1
var e = Encoding.GetEncoding("iso-8859-1");
var s = e.GetString(new byte[] { 189 });
Сво работает нормально, например, со значением которая ½ в ISO 8859-1. Но в моем тесте я получил байт со значением 154
, который равен š (латинская маленькая буква S с кароном) в соответствии с this site.
Проблема в том, что оно не отображает его на консоли, ее просто отображает Вопросительный знак так: и отладчик показывает только обычную строку:
Что может быть ошибка?
Любая помощь будет принята с благодарностью.
Я не могу воспроизвести. В LinqPad 'Encoding.GetEncoding (« iso-8859-1 »). GetString (новый байт [] {189})' производит '½'. – Oded
Это не проблема C# * per se *, я пересматриваю название. – user7116
Определяет ли этот стандарт значение 154? http://en.wikipedia.org/wiki/ISO/IEC_8859-1 не похож на него; –