【发布时间】:2019-08-27 22:02:08
【问题描述】:
基本上,我是从一个网站上提取信息,特别是一个在整个页面中散布着希伯来语的网站。正确获取希伯来语对程序来说非常重要,但我得到的不是希伯来语字符,而是奇怪的重音英文字符。
我尝试过 Encoding.Convert 但它没有奏效,我尝试过更改编码,但那只是给了我????符号。我尝试将其写入 txt 文件,以查看是否是 cmd 无法显示它;我仍然得到相同的符号。
using (WebClient client = new WebClient())
{
string htmlCode = client.DownloadString("https://www.pealim.com/dict/");
Console.WriteLine(htmlCode);
}
【问题讨论】:
-
可以看到,WebClient 使用的是 WebRequest 编码,而不是 WebResponse 编码。因此,您可以使用 HttpWebRequest 执行通常可以执行的操作:改为从 HttpWebResponse 获取实际编码。然后,您可以使用实际编码对字符串进行解码。不一定是UTF-8。许多 https 资源仍然使用本地/特定编码(见图)。
-
顺便说一句,如果你有控制台应用,
Courier New可以打印希伯来符号。