Изменить кодировку
C/C++/C# - общие вопросыc# кодировка нобелевская премия хоббит квазисимметричный стелларатор квазинесимметричный стелларатор китайский городовой русский рок UTF8 парсер конец света деревня дураков герой из готики прянечный человечек украинский язык программирования Гоголь лавей
Мне нужно считать содержимое сайта в правильной кодировке. Считываю через webrequest/response и streamreader
Кодировка указывается в строчке StreamReader streamreader = new StreamReader(stream, ASCIIEncoding.UTF8);
Пока я считываю всегда в UTF-8, а потом через регулярные выражения проверяю вхождения русских символов.
Затем, если символов не нашлось выполняю ещё один запрос, но в streamreader уже пишу default.
Но это, конечно, какой-то прямо неполноценный вариант)) 2 запроса к одному ресурсу плохо делать))
Думал, что может получится так
byte[] bytes = Encoding.UTF8.GetBytes(text);
text = Encoding.Default.GetString(bytes);
но все-равно кракозябра на выходе. Подскажите, как правильно преобразовать из одной кодировки в другую.
И ещё, буду признателен, если посоветуете, как всю процедуру упростить. Обойтись без регулярных выражений,
а то вдруг придётся парсить какой-нибудь корейский сайт, тогда мой метод уже не прокатит. Спасибо)))
Хидер ответа от сервера содержит кодировку.
http://forum.codenet.ru/q51973/