.NET WebClient抓取文本错误吗?
我以为我搞定了这件事。然后我意识到我没有正确地保存/解析一些文本 (对不起,我不知道上面写的是什么,是随机用户写的) 下面是简单的测试代码。基本上,我为utf-8Unicode编写BOM并编写源代码。这不起作用,出于理智的原因,我尝试直接保存文件(第二段代码)。两者都在文件中得到了错误的文本,并使用多个浏览器显示了错误的文本 为什么以及如何修复它 注意:在我的第一个代码中,我可以看到sz使用visual Studio持有相同的错误文本.NET WebClient抓取文本错误吗?,.net,webclient,.net,Webclient,我以为我搞定了这件事。然后我意识到我没有正确地保存/解析一些文本 (对不起,我不知道上面写的是什么,是随机用户写的) 下面是简单的测试代码。基本上,我为utf-8Unicode编写BOM并编写源代码。这不起作用,出于理智的原因,我尝试直接保存文件(第二段代码)。两者都在文件中得到了错误的文本,并使用多个浏览器显示了错误的文本 为什么以及如何修复它 注意:在我的第一个代码中,我可以看到sz使用visual Studio持有相同的错误文本 using System; using System.IO;
using System;
using System.IO;
using System.Net;
using System.Text;
namespace unicode_stuff
{
class Program
{
static void Main(string[] args)
{
var wc = new WebClient();
var fn = "out.html";
var sw = new StreamWriter(fn, false, Encoding.UTF8);
var sz = wc.DownloadString("http://www.pastie.org/pastes/1703099/text");
sw.WriteLine(sz);
sw.Close();
}
}
}
第二
using System;
using System.IO;
using System.Net;
namespace unicode_stuff
{
class Program
{
static void Main(string[] args)
{
var wc = new WebClient();
var fn = "out.html";
wc.DownloadFile("http://www.pastie.org/pastes/1703099/text", fn);
}
}
}
加载之前,请尝试将编码设置为UTF8:
wc.Encoding = System.Text.Encoding.UTF8;