在WP8.1上设置HTTPClient编码

时间:2014-12-13 16:45:33

标签: json character-encoding windows-phone windows-phone-8.1 httpclient

我正在将我的WP8应用程序移植到WP8.1,它已经准备就绪,除了使用WebClient获取JSON数据的代码。 在WP8.1中,我不能再使用WebClient,所以我尝试使用HTTPClient,但没有成功。 这里的问题是我需要将编码设置为UTF-8,但我不知道如何做到这一点。

在WP8中代码如下:

using (WebClient client = new WebClient())
            {
                client.Encoding = Encoding.UTF8;
                htmlCode = client.DownloadString(url);
            }

但是HTTPClient没有Encoding属性。 有人知道在HTTPClient上设置它的方法吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以将数据作为字节数组获取,然后手动使用UTF-8对其进行解码:

using (HttpClient client = new HttpClient())
{
    byte[] data = await client.GetByteArrayAsync(uri);
    htmlCode = Encoding.UTF8.GetString(data);
}