【发布时间】:2012-07-06 23:51:52
【问题描述】:
我一直在努力转换属性的 html 值,但没有任何成功。
这是我要转换的 HTML(确保字符集不会在此处显示,但是,我看到的和你看到的完全一样)。
<a href="https://sistemas.usp.br/jupiterweb/listarGradeCurricular?codcg=12&codcur=12012&codhab=1&tipo=N" target="_blank">Administração – São Paulo – diurno</a>
好的,这个 htmlnode 的 VALUE 是“Administração - São Paulo - diurno”。
我正在使用 HtmlAgilityPack 来解析 HtmlPage,一旦我到达这个节点,它的 innerText 值就像这样:Administração â São Paulo â diurno
我假设页面的原始字符集是 UTF-8,因为这就是 html 上的编码标记对我说的。
如何将这个奇怪的字符串转换为:Administração - São Paulo - Diurno?
我已经尝试过这些线程:thread one 和 thread two 并没有解决我的问题
编辑:我通过 C# WebRequest Get 获取页面。
EDIT2:添加了 HtmlAgilityPack 标签
问题是孤立的:WebRequest 有时会弄乱 Html。
还有其他方法可以设置编码吗?我正在尝试:_webReq.Encoding = "ISO-8859-1"
提前致谢
【问题讨论】:
-
我相信你应该用 HtmlAgilityPack 来标记它,看起来这就是问题所在。您是否从数据库中检索此数据?如果你在上面放一个分析器,数据是否正确显示?
-
我将编辑以使其更清晰,并使用 HtmlAgilityPack 对其进行标记。我通过 webrequest c# 获取页面
-
这也很重要。我相信您可以在通过 WebRequest 获取时设置编码,给我一分钟
-
可以,我现在就试试。
-
将编码设置为“ISO-8859-1”,无效。
标签: c# html html-agility-pack encode iso-8859-1