【问题标题】:Mono for Android HTML Source code with special charactersMono for Android HTML 带有特殊字符的源代码
【发布时间】:2012-11-03 20:55:39
【问题描述】:

我正在使用 Mono for Android (C#) 和 WebClient DownloadString 来获取 HTML 网站的源代码,该网站使用特殊字符 (č,š,ž - charset=windows-1250)。但是在显示代码时,它会显示 � 而不是字符。有没有办法显示正确的字符? 我正在使用 MonoDevelop。

【问题讨论】:

    标签: c# android html xamarin.android


    【解决方案1】:

    当您使用DownloadString 时,.NET(我想也是 Mono)会自动假定下载的数据以 UTF-8 编码。在您的情况下,情况并非如此,因此是 � 字符。

    代替DownloadString,使用DownloadData 下载原始字节并将它们转换为UTF-8:

    byte[] win1250Bytes = webClient.DownloadData("http://whatever.com");
    string utf8String = Encoding.GetEncoding("windows-1250").GetString(win1250Bytes);
    

    【讨论】:

    • 它在使用模拟器时有效,但是当我在实际的 Android 设备上尝试该应用程序时,它返回此错误:不支持编码名称'windows-1250' 参数名称:名称
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-26
    • 2011-04-22
    • 2017-10-30
    • 2015-02-25
    • 2012-07-30
    • 1970-01-01
    相关资源
    最近更新 更多