.NET 4.x Преобразование кодировки Unicode в UTF-8 - C#
Формулировка задачи:
Столкнулся просто с дичайшей проблемой:
Не понятно по какой причине, но ничего не работает, если ставить бряки то видно что в переменной строка с продублированными слешами, видимо причина в этом.
Как сделать чтобы данный код выводил нормальные преобразованные значения из файла.
Строка в файле :
И на выводе дает тоже самое
Но парадокс заключается в том, что если эту строку подставить просто, без считывания из файла, то все работает просто чудесно, вопрос - в чем проблема и что делать?
Рабочим оказался только:
private void button1_Click(object sender, EventArgs e) { StreamReader sr = new StreamReader(@"C:\log.txt"); Encoding iso_8859_1 = Encoding.GetEncoding("ISO-8859-1"); string encr = sr.ReadLine(); byte[] b = iso_8859_1.GetBytes(encr); sr.Close(); string res = Encoding.UTF8.GetString(b); richTextBox2.Text = res; }
\u00d0\u00b9\u00d0\u00b9\u00d0\u00b9
Аналогично не работает и:
private void button1_Click(object sender, EventArgs e) { Encoding iso_8859_1 = Encoding.GetEncoding("ISO-8859-1"); byte[] b = iso_8859_1.GetBytes(richTextBox1.Text); string res = Encoding.UTF8.GetString(b); richTextBox2.Text = res; }
private void button1_Click(object sender, EventArgs e) { Encoding iso_8859_1 = Encoding.GetEncoding("ISO-8859-1"); byte[] b = iso_8859_1.GetBytes("\u00d0\u00b9\u00d0\u00b9\u00d0\u00b9"); string res = Encoding.UTF8.GetString(b); richTextBox2.Text = res; }
Решение задачи: «.NET 4.x Преобразование кодировки Unicode в UTF-8»
textual
Листинг программы
string unreadable = @"\u00d0\u00b9\u00d0\u00b9\u00d0\u00b9"; string readable = HttpUtility.UrlDecode(unreadable.Replace(@"\u00", "%"), Encoding.UTF8);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д