我试图用字符串保存网站的html。该网站具有国际特色(ę,ś,ć,.)即使我将编码设置为UTF-8,也没有将它们保存到字符串中,这与网站字符集相对应。
这是我的代码:
using (WebClient client = new WebClient())
{
client.Encoding = Encoding.UTF8;
string htmlCode = client.DownloadString("http://www.filmweb.pl/Mroczne.Widmo");
}
当我将"htmlCode“打印到控制台时,国际字符没有正确显示,即使它们在原始的HTML中正确显示。
任何帮助都是非常感谢的。
发布于 2016-05-13 03:22:41
我也有同样的问题。client.DownloadString
似乎不使用UTF-8对字符进行编码。使用client.DownloadData
并使用Encoding.UTF8.GetString
对返回的数据进行编码解决了这个问题。
using (WebClient client = new WebClient())
{
var htmlData = client.DownloadData("http://www.filmweb.pl/Mroczne.Widmo");
var htmlCode = Encoding.UTF8.GetString(htmlData);
}
发布于 2022-03-04 19:47:46
你这样做很难。在Encoding
上有一个WebClient
属性,可以设置为Encoding.UTF8
https://stackoverflow.com/questions/37200465
复制相似问题