0

我正在通过 WebClient 下载 XML 文件,如下所示:

WebClient connect = new WebClient();
connect.DownloadStringCompleted += new DownloadStringCompletedEventHandler(connect_DownloadStringCompleted);
connect.DownloadStringAsync(new Uri("http://conn.info/api/v8/search/item_short.xml?apikey=123&lang=de&q="+textBox1.Text));

然后我解析它们

XElement erg = XElement.Parse(e.Result);

但问题是,像“ü”或“ä”这样的德语字母将无法正确显示。相反,我得到一个“?” 对于我的输出中的每个字母(在 Windows Phone 设备上)。

这如何解决?

4

2 回答 2

1

好吧,您已经注意到变音符号丢失了。我建议将您的 WebClient 设置为 UTF8 模式:

connect.Encoding = System.Text.Encoding.UTF8;
于 2012-09-05T11:51:00.750 回答
0

我在这里假设您的 XML 的编码是 ISO-8859-1。(我无法访问您在上面的代码中拥有的域)。尝试按如下方式设置编码:

connect.Encoding = Encoding.GetEncoding("ISO-8859-1");

我用http://www.spiegel.de/thema/windows_phone_8/index.rss测试了一段代码,它对我有用。请找到结果的屏幕截图。我为你圈出了带有德语特殊字符的单词。

在此处输入图像描述

于 2012-09-07T08:05:44.220 回答