【问题标题】:Convert "iso-8859-1" to "utf-8" with HTML Agility Pack and xpath使用 HTML Agility Pack 和 xpath 将“iso-8859-1”转换为“utf-8”
【发布时间】:2013-07-20 13:33:04
【问题描述】:

我正在尝试获取一个网页,但我遇到了特殊字符的问题。如何转换数据以获得正确的读数?该网站使用 ISO 8859-1,我必须使用 UTF 8。

    string url = "http://www.ta-meteo.fr/troyes.htm";
       HtmlWeb web = new HtmlWeb();
       HtmlDocument doc = web.Load(url);
       HtmlNode bulletinMatin = doc.DocumentNode.SelectSingleNode("//*[@id='blockdetday0']/div[1]/p[1]");
       MessageBox.Show(bulletinMatin.InnerText);    

谢谢。

【问题讨论】:

  • 很简单:什么都不做。

标签: c# html-agility-pack iso-8859-1


【解决方案1】:

我解决了问题

 string url = "http://www.ta-meteo.fr/troyes.htm";

 Encoding iso = Encoding.GetEncoding("iso-8859-1");
   HtmlWeb web = new HtmlWeb()
        {
            AutoDetectEncoding = false,
            OverrideEncoding = iso,
        };

   HtmlDocument doc = web.Load(url);
   HtmlNode bulletinMatin = doc.DocumentNode.SelectSingleNode("//*[@id='blockdetday0']/div[1]/p[1]");
   MessageBox.Show(bulletinMatin.InnerText);     

【讨论】:

  • 对我来说就像一个魅力。我尝试了“Encoding.UTF8”,但没有奏效。谢谢!
  • doc.OptionDefaultStreamEncoding = Encoding.UTF8;
猜你喜欢
  • 2011-08-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
  • 2014-08-29
  • 2014-04-30
  • 1970-01-01
  • 1970-01-01
  • 2010-11-19
相关资源
最近更新 更多