Конвертация из win1252 в win1251 - C#

Узнай цену своей работы

Формулировка задачи:

Уважаемые Гуру! По запросу к карте данные приходят в кодировке win1252, требуется перевести, например, в кодировку win1251. В онлайн декодере перекодирует нормально и из win1252, а если поставить автоматическое определение исходной кодировки, то определяет как ISO-8859-1 и перекодирует опять же нормально (рис.1,2).
public static string convertToUTF8(string str)
        {
            Encoding win1252 = Encoding.GetEncoding(1252);
            Encoding win1251 = Encoding.GetEncoding(1251);
            byte[] win1252Bytes = win1252.GetBytes(str);
            byte[] win1251Bytes = Encoding.Convert(win1252, win1251, win1252Bytes);
            string msg = win1251.GetString(win1251Bytes);
            return msg;
Результат на третьем рисунке. Не получается. Буква "А" вроде нормально получилась, а большая буква "Р" - нет.

Решение задачи: «Конвертация из win1252 в win1251»

textual
Листинг программы
shapeFileProvider.Encoding = System.Text.Encoding.GetEncoding(1251);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5