Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 从wordpress 3.0博客中提取atom提要时,如何防止出现奇怪的字符_.net_Wordpress_Character Encoding - Fatal编程技术网

.net 从wordpress 3.0博客中提取atom提要时,如何防止出现奇怪的字符

.net 从wordpress 3.0博客中提取atom提要时,如何防止出现奇怪的字符,.net,wordpress,character-encoding,.net,Wordpress,Character Encoding,我在wordpress博客上有一个atom提要: 当我下载文件文本并将其显示在我的网站上时,我会看到一些奇怪的字符,比如这里的重音字母“A”: 最近的研究表明,自2008年以来,与车祸相关的死亡人数下降了近10%。原因是什么 我在C#web应用程序中使用以下代码下载提要: WebClient client = new WebClient(); client.Headers.Add(@"Accept-Language: en-US,en

我在wordpress博客上有一个atom提要:

当我下载文件文本并将其显示在我的网站上时,我会看到一些奇怪的字符,比如这里的重音字母“A”:

最近的研究表明,自2008年以来,与车祸相关的死亡人数下降了近10%。原因是什么

我在C#web应用程序中使用以下代码下载提要:

        WebClient client = new WebClient();
        client.Headers.Add(@"Accept-Language: en-US,en          
                           Accept-Charset: utf-8");
        string xml_text = client.DownloadString(_atom_url);
xml\u text.Contains(“Contains”)
返回true,但如果我在浏览器中下载提要,则不会返回该值
存在。我很确定这是一个角色集问题,但我不知道为什么。通过检查
客户端.ResponseHeaders
,我可以看到它实际上是在下载utf-8格式的文本,而我的.Net站点上的响应也是utf-8格式的,所以我无法理解为什么当我强制浏览器将提要解释为ISO-8859-1而不是utf-8时会出现这种奇怪的情况(这绝对是提要的正确字符集。)

我敢肯定,您的WebClient以某种方式默认为ISO-8859-1,或者您站点上的输出编码为ISO-8859-1,这显然会破坏UTF-8输入


可能首先开始检查站点的输出。如果确实是UTF-8,请查看网络客户端。

这让我走上了正确的道路。
client.Encoding=Encoding.UTF8;
修复了它。
client.Headers.Add(@“接受语言:en-US,en-Accept字符集:UTF-8”);
是不必要和不充分的