相关疑难解决方法(0)

由于编码问题,WebClient.DownloadString导致损坏的字符,但浏览器没问题

以下代码:

var text = (new WebClient()).DownloadString("http://export.arxiv.org/api/query?search_query=au:Freidel_L*&start=0&max_results=20"));
Run Code Online (Sandbox Code Playgroud)

导致变量text包含字符串等许多内容

"$κ$ -Minkowski空间,标量场和洛伦兹不变性问题"

但是,当我在Firefox中访问该URL时,我得到了

$κ$ -Minkowski空间,标量场和洛伦兹不变性问题

这实际上是正确的.我也试过了

var data = (new WebClient()).DownloadData("http://export.arxiv.org/api/query?search_query=au:Freidel_L*&start=0&max_results=20");
var text = System.Text.UTF8Encoding.Default.GetString(data);
Run Code Online (Sandbox Code Playgroud)

但这给了同样的问题.

我不确定这里的错误在哪里.Feed是否是UTF8编码的,浏览器足够聪明,可以解决这个问题,但不是WebClient吗?Feed是否正确UTF8编码,但是WebClient以其他方式失败了?我该怎么做才能缓解这种情况?

.net unicode webclient utf-8

81
推荐指数
1
解决办法
4万
查看次数

标签 统计

.net ×1

unicode ×1

utf-8 ×1

webclient ×1