Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Нужно получить кодировку HTML разметки на C#  [new]
polin11
Member

Откуда:
Сообщений: 38
Нужно получить кодировку HTML разметки на C#
Получаю HTML разметку следующим образом
[SRC c#]WebClient client = new WebClient();
Stream stream = client.OpenRead(url);
  StreamReader sr = new StreamReader(stream);
  string link;
    while ((link = sr.ReadLine()) != null)
    html += link;
     stream.Close();
[/SRC]
Есть ли стандартный метод узнать кодировку в которой HTML или по-старинке, использовать регулярные выражения,
искать кодировку в теге <meta> и атрибут charset?
1 окт 17, 09:56    [20834139]     Ответить | Цитировать Сообщить модератору
 Re: Нужно получить кодировку HTML разметки на C#  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 142462
WebRequest myWebRequest = WebRequest.Create(@"http://www.microsoft.com");
WebResponse myWebResponse = myWebRequest.GetResponse();
string CharacterSet  = ((System.Net.HttpWebResponse)myWebResponse).CharacterSet;
1 окт 17, 10:30    [20834169]     Ответить | Цитировать Сообщить модератору
 Re: Нужно получить кодировку HTML разметки на C#  [new]
Изопропил
Member

Откуда:
Сообщений: 30661
polin11,

кодировка по-старинке содержится в заголовке ответа - client.ResponseHeaders[HttpResponseHeader.ContentType]
если её там нет - по стандарту кодировка ISO 8859-1

Если сайт/сервис делали рукожопы - тогда точно так же по-старинке анализировать meta charset и
meta http-equiv="Content-Type" (которые присутствовать не обязаны)
1 окт 17, 10:41    [20834180]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить