下载UTF-8格式的网页

本文关键字:网页 格式 UTF-8 下载 | 更新日期: 2023-09-27 18:16:26

我使用下面的代码下载这个XML文件:

private async static Task<string> DownloadPageAsync(string url)
{
    try
    {
        HttpClientHandler handler = new HttpClientHandler();
        handler.UseDefaultCredentials = true;
        handler.AllowAutoRedirect = true;
        handler.UseCookies = true;
        HttpClient client = new HttpClient(handler);
        client.MaxResponseContentBufferSize = 10000000;
        HttpResponseMessage response = await client.GetAsync(url);
        response.EnsureSuccessStatusCode();
        string responseBody = response.Content.ReadAsString();
        return responseBody;
    }
    catch (Exception ex)
    {
        return "error" + ex.Message;
    }
}

,但我得到的文件似乎有编码问题。虽然文档格式不好,但我猜我下载的网页也不是UTF-8格式。我怎么能返回一个UTF-8字符串?谢谢。

下载UTF-8格式的网页

你的链接编码是iso-8859-1

使用

XmlDocument.Load (uriString)

XDocument.Load (uriString)

我建议使用HTML Agility Pack下载并解析文档——它会自动检测编码(在可能的情况下),所以这对你来说应该不是问题。

如果这不是一个选项,您需要知道文档正在使用什么编码,然后使用Encoding类将其从原始编码转换为UTF8。