Кодировка C# синтаксический анализ ответа, полученного от сервера MQ
Привет,
В одном из моих приложений я использую IBM MQ для запроса/ ответа, все работает нормально, пока я не получу ответ в Тайский символы, которые были получены/ показаны как мусор (потерянные символы) "Я пишу ответ на файл, используя кодировку UTF-8". когда я открываю ответ и подаю заявку Тайский набор символов в файл ответов в Notepad++ показывает правильное значение.
Ниже приведен ответ, который я получил-
<Name1>กลุ่ม</Name1>
На данный момент я пишу ответ на временный файл на диске и читаю этот ответ используя кодировку как показано ниже это работает-
Encoding encd = Encoding.GetEncoding(874); System.IO.File.WriteAllText("D:\\temp_1.txt", _response); string s = System.IO.File.ReadAllText("D:\\temp_1.txt", encd);
То же самое я пытаюсь достичь с помощью строки это не работает
byte[] data = System.Text.Encoding.Unicode.GetBytes(_response); string xyz = encd.GetString(data); oLogger.LogDebugMessage("Response encd: " + xyz);
Я не хочу писать ответ в файл и читать его через это не представляется возможным. Может ли кто-нибудь предложить что-нибудь с использованием Строковой кодировки?
Что я уже пробовал:
Я пробовал конвертировать ответ в строку в Юникод
<pre>byte[] data = System.Text.Encoding.Unicode.GetBytes(_response); string xyz = encd.GetString(data); oLogger.LogDebugMessage("Response encd: " + xyz);
Gerry Schmitz
Похоже, вы путаете мусор с использованием неправильного шрифта для конкретной "презентации" (Notepad++ vs console output).