Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202

Неверное отображение русских символов при загрузке HTML в TextBox

18.02.2014, 06:38. Показов 3470. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Пытаюсь вывести html сайтf в textbox (кодировка 1251), но идет некорректное отображение русских символов, подскажите как это можно исправить?
C#
1
2
3
 Encoding srcEncodingFormat = Encoding.GetEncoding("windows-1251");
            byte[] originalByteString = srcEncodingFormat.GetBytes(result);
            textBox1.Text = Encoding.Default.GetString(originalByteString);
Добавлено через 4 минуты
HTML5
1
2
  
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
Добавлено через 1 час 23 минуты
HTML5
1
<title>�������, �������, ���������� �� ������� ������� (���������, �����������, ����-���������, ������) | ��-������</title>
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.02.2014, 06:38
Ответы с готовыми решениями:

Неверное отображение русских символов в Chat
Описание Есть класс. public class keyBoardInput { public static event Action&lt;char&gt; newKeyEvent; ...

Неверное отображение кириллических символов при чтении из SQLite
Дано: Одна программа написана на С++ Builder XE под виндой. Операторы заполняют базу данных SQLite то же под виндой. После этого файл...

Некорректное отображение русских символов при установке
Устанавливала программу, в итоге все писалось не на русском языке, а были одни иероглифы. Возможно дело в кодировке..Подскажите...

10
320 / 280 / 109
Регистрация: 27.09.2010
Сообщений: 1,058
18.02.2014, 13:17
Если бы вы на своей странице сделали кодировку utf-8 то вы бы решили все свои проблемы.
0
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202
18.02.2014, 13:47  [ТС]
Цитата Сообщение от titans2011 Посмотреть сообщение
Если бы вы на своей странице сделали кодировку utf-8 то вы бы решили все свои проблемы.
если бы это был мой сайт то вопросов бы не было, а так есть вопрос. Делаю парсинг сайта
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
18.02.2014, 14:14
Может
C#
1
2
3
textBox1.Text = Encoding.Unicode.GetString(originalByteString);
// или
textBox1.Text = Encoding.UTF8.GetString(originalByteString);
0
 Аватар для Yukikaze
352 / 331 / 49
Регистрация: 12.12.2011
Сообщений: 563
18.02.2014, 14:19
А разве не так?
C#
1
2
3
Encoding srcEncodingFormat = Encoding.GetEncoding("windows-1251");
byte[] originalByteString = srcEncodingFormat.GetBytes(result); // получили массив байт в 1251 кодировке
textBox1.Text = srcEncodingFormat.GetString(originalByteString); // получили строку из массива байт в 1251 кодировке
0
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202
19.02.2014, 04:06  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Может
C#
1
2
3
textBox1.Text = Encoding.Unicode.GetString(originalByteString);
// или
textBox1.Text = Encoding.UTF8.GetString(originalByteString);
на 1 вариант иероглифы
HTML5
1
格浴㹬格慥㹤਍††琼瑩敬㼾㼿㼿㼿‬㼿㼿㼿ⰿ㼠㼿㼿㼿㼿‿㼿㼠㼿㼿㼿㼠㼿㼿㼿⠠㼿㼿㼿㼿ⰿ㼠㼿㼿㼿㼿㼿‬㼿㼿㼭㼿㼿㼿㼿‬㼿㼿㼿
⁼㼿㼭㼿㼿㰿琯瑩敬ാ †††††㰠楬歮爠汥∽瑳汹獥敨瑥•祴数∽整瑸振獳•牨晥∽猯祴敬挮獳〿〮㌹㠶〱‰㌱㈹㘷㌸㘸㸢਍††††††氼湩敲㵬匢祴敬桓敥≴琠灹㵥琢硥⽴獣≳栠敲㵦⼢獣⽳慴獢挮獳㸢਍††††††氼湩敲㵬猢祴敬桳敥≴琠灹㵥琢硥⽴獣≳栠敲㵦⼢灥捯彨瑳汹獥挮獳㸢਍††††††氼湩敲㵬猢祴敬桳敥≴琠灹㵥琢硥⽴獣≳栠敲㵦⼢瑳汹彥㍪挮獳㸢਍††††††氼湩敲㵬猢祴敬桳敥≴琠灹㵥琢硥⽴獣≳栠敲㵦⼢獣⽳楬桧晴捡⹥獣≳ാ †††††㰠楬歮爠汥∽瑳汹獥敨瑥•祴数∽整瑸振獳•牨晥∽振獳愯摤瑩潩慮⹬獣≳ാ †††††㰠楬歮爠汥∽桳牯捴瑵椠潣≮栠敲㵦⼢慦楶潣⹮捩≯ാ †††††㰠敭慴栠瑴⵰煥極㵶䌢湯整瑮吭灹≥挠湯整瑮∽整瑸栯浴㭬挠慨獲瑥眽湩潤獷ㄭ㔲∱ാ †††††㰠敭慴栠瑴⵰煥極㵶䌢湯整瑮匭牣灩⵴祔数•潣瑮湥㵴琢硥⽴慪慶捳楲瑰㸢਍਍††††††洼瑥⁡慮敭✽慹摮硥瘭牥晩捩瑡潩❮挠湯整瑮✽㤶㉦㘹㜴换攳搳㐲㸧਍††††††洼瑥⁡慮敭✽慹摮硥瘭牥晩捩瑡潩❮挠湯整瑮✽㈷挹㘳〹摡㜲慦㉢㸧਍††††††洼瑥⁡慮敭✽慹摮硥瘭
на второй вариант
HTML5
1
<meta name="description" content="??-??????. ??????, ??????????? ????????, ???????? ? ???????????  ? ?????????? ????. ??????? ? ?????????? ? ???????????? ??  ?????????????, ?????, ??????, ??? ??????.">
Добавлено через 1 минуту
Цитата Сообщение от Yukikaze Посмотреть сообщение
А разве не так?
C#
1
2
3
Encoding srcEncodingFormat = Encoding.GetEncoding("windows-1251");
byte[] originalByteString = srcEncodingFormat.GetBytes(result); // получили массив байт в 1251 кодировке
textBox1.Text = srcEncodingFormat.GetString(originalByteString); // получили строку из массива байт в 1251 кодировке
Не сработало
HTML5
1
<meta name="description" content="??-??????. ??????, ??????????? ????????, ???????? ? ???????????  ? ?????????? ????. ??????? ? ?????????? ? ???????????? ??  ?????????????, ?????, ??????, ??? ??????.">
0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
19.02.2014, 04:28
Открой строку в браузере и тупо подбери
0
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202
19.02.2014, 04:31  [ТС]
Может где ранее допустил ошибку
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
 public string GET_http(string url)
        {
            System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
            System.Net.WebRequest reqGET = System.Net.WebRequest.Create(url);
            System.Net.WebResponse resp = reqGET.GetResponse();
            System.IO.Stream stream = resp.GetResponseStream();
            System.IO.StreamReader sr = new System.IO.StreamReader(stream);
            string html = sr.ReadToEnd();
            return html;
        }
 
        public string http_post(string url, string data)
        {
            var cookies = new CookieContainer();
            ServicePointManager.Expect100Continue = false;
            var request = (HttpWebRequest)WebRequest.Create(url);
            request.CookieContainer = cookies;
            request.Method = "POST";
            //request.ContentType = "application/x-www-form-urlencoded";
            request.ContentType = @"text/xml;charset=""windows-1251""";
            using (var requestStream = request.GetRequestStream())
            using (var writer = new StreamWriter(requestStream))
            {
                writer.Write(data);
            }
            using (var responseStream = request.GetResponse().GetResponseStream())
            using (var reader = new StreamReader(responseStream))
            {
                var result = reader.ReadToEnd();
                return result;
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            webBrowser1.Navigate("http://www.dv-tender.ru");
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            webBrowser1.Navigate("javascript:function foo(){alert('aaa')}foo();");
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            textBox1.Text = webBrowser1.DocumentText;
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            string html = GET_http("http://www.dv-tender.ru");
            // Создаём экземпляр класса
            HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
// Присваиваем текстовой переменной k html-код
// Загружаем в класс (парсер) наш html
            doc.LoadHtml(html);
// Извлекаем значения
            HtmlNode bodyNode = doc.DocumentNode.SelectSingleNode("//div[@class='left_nav']/form");
            string act_url = bodyNode.Attributes["action"].Value;
           
            //POST запрос
            string login = textBox2.Text;
            string pass = textBox3.Text;
            string data = "@login=" + login + "@pwd=" + pass;
            string result = http_post("http://www.dv-tender.ru", data);
            //string result = http_post(act_url, data);
            //textBox1.Text = result;
 
            Encoding srcEncodingFormat = Encoding.GetEncoding("windows-1251");
            byte[] originalByteString = srcEncodingFormat.GetBytes(result); // получили массив байт в 1251 кодировке
            textBox1.Text = srcEncodingFormat.GetString(originalByteString); // получили строку из массива байт в 1251 кодировке
 
  }
0
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202
19.02.2014, 04:51  [ТС]
скрин вывода формы
Миниатюры
Неверное отображение русских символов при загрузке HTML в TextBox  
0
 Аватар для Yukikaze
352 / 331 / 49
Регистрация: 12.12.2011
Сообщений: 563
19.02.2014, 13:17
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public string http_post(string url, string data)
        {
            Encoding encoding= Encoding.GetEncoding("windows-1251");
 
            var cookies = new CookieContainer();
            ServicePointManager.Expect100Continue = false;
            var request = (HttpWebRequest)WebRequest.Create(url);
            request.CookieContainer = cookies;
            request.Method = "POST";
            //request.ContentType = "application/x-www-form-urlencoded";
            request.ContentType = @"text/xml;charset=""windows-1251""";
            using (var requestStream = request.GetRequestStream())
            using (var writer = new StreamWriter(requestStream, encoding))
            {
                writer.Write(data);
            }
            using (var responseStream = request.GetResponse().GetResponseStream())
            using (var reader = new StreamReader(responseStream, encoding))
            {
                var result = reader.ReadToEnd();
                return result;
            }
        }
И удалите этот бред с кнопки
C#
1
2
3
Encoding srcEncodingFormat = Encoding.GetEncoding("windows-1251");
byte[] originalByteString = srcEncodingFormat.GetBytes(result);кодировке
textBox1.Text = srcEncodingFormat.GetString(originalByteString);
1
14 / 14 / 8
Регистрация: 12.08.2013
Сообщений: 202
19.02.2014, 15:06  [ТС]
Yukikaze, Без бреда не работает, а с бредом очень даже работает, спасибо за помощь!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.02.2014, 15:06
Помогаю со студенческими работами здесь

CodeGear RAD Studio C++ и FireBird неверное отображение русских слов.
Среда программирования CodeeGear RAD Studio C++ 2009, база данных FireBird 2.1. Текстовые поля в базе данных отображаются нормально на...

Некорректное отображение русских символов при разборе пакетов от сервера на Delphi
Мое устройство получает из сети пакеты данных от Delphi программы сервера. Далее мне надо отобразить данные в Label, но вместо русских букв...

Неверное отображение символов
Добрый день ув. пользователи ! Подскажите пожалуйста, в окне браузера вижу вот такое ...

Неверное отображение символов в Caption
Доброго дня! При написании калькулятора в Caption двум кнопкам (соответственно функциям Floor и Ceil) понадобилось вписать по два...

Неверное отображение символов в DataGridView
Доброго времени суток. Имеется база созданая в навикате, в ней стоит кодировка cp1251. Но когда я загружаю ее в dataGridView...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru