【问题标题】:Stream containing Html encoding and special characters issue包含 Html 编码和特殊字符问题的流
【发布时间】:2012-08-29 09:05:19
【问题描述】:

我的程序通过发出 HttpWebRequest 并从 HttpWebResponse 读取流来读取网页内容。
我查看了html内容并看到了这个。

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

所以我这样做了:

Encoding CorrectEncoding = Encoding.GetEncoding("iso-8859-1");
StreamReader readStream = new StreamReader(receiveStream, CorrectEncoding);
result = readStream.ReadToEnd();

但在result 内部,我看到的是 Bj?rn,而不是像在浏览器中那样看到 Björn。 知道我做错了什么吗?
谢谢

【问题讨论】:

    标签: .net encoding stream


    【解决方案1】:

    使用 HttpWebResponse 的标头

    response.Headers[HttpResponseHeader.ContentType]
    

    response.Headers[HttpResponseHeader.ContentEncoding] 
    

    而不是查看流。

    【讨论】:

    • 不起作用 ContentEncoding 对我来说始终为空,而且我从 blogs.msdn.com/b/feroze_daud/archive/2004/03/30/104440.aspx 了解到这是获取编码的最佳解决方案
    • @Para 好像你没有仔细阅读这个博客 如果这个标题不存在,或者如果标题值中没有“charset=”标记,那么你需要看看在 HTML 页面的标题处
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 2015-06-01
    • 1970-01-01
    • 2017-06-03
    • 2011-02-11
    相关资源
    最近更新 更多