【发布时间】:2011-04-18 05:52:19
【问题描述】:
请帮帮我。我在 GET 请求后编码响应字符串有问题:
var m_refWebClient = new WebClient();
var m_refStream = m_refWebClient.OpenRead(this.m_refUri);
var m_refStreamReader = new StreamReader(this.m_refStream, Encoding.UTF8);
var m_refResponse = m_refStreamReader.ReadToEnd();
调用此代码后,我的字符串 m_refResponse 是 json 源代码,其中包含 \u041c\u043e\u0439 等子字符串。它是什么?如何为西里尔文编码?经过多次尝试,我很累。
更正
【问题讨论】:
-
您需要提供更多信息 - 例如您期望获得的编码。你有什么理由不只是使用 DownloadString?
-
如果你用西里尔字母代替
Encoding.UTF8(第4行)会怎样?还有 Unicode?span> -
@Jon,谢谢,我可以使用 DownloadString,但结果会一样)
-
@MainMa,我尝试了很多编码组合,我尝试了 Encoding.Convert,但仍然没有)))
-
如果 DownloadString 的结果相同,这意味着 Web 服务器没有正确地为您提供数据 - 例如,它可能会搞砸 Content-Type 标头。
标签: c# json unicode utf-8 encode