2011-12-05 57 views
1

在我的Android应用程序中,我试图显示德文文本。 öäüß这些字符无法在TextView中显示。如果有人有想法如何设置字体或如何显示字符让我知道。我从服务收到的数据。在TextView中显示德文字符

+0

可能[什么是字符编码,为什么我应该打扰它](http://stackoverflow.com/questions/10611455/what-is-character-encoding-and-why-should-i-bother-with-it) – Raedwald

回答

4
+0

你好我解析xml和xml里面的数据是德国人我的xml是UTF-8 Im par由DOM解析器唱歌。数据是正确的,但从xml读取数据时,它将德语字符视为垃圾标志。你有什么线索怎么办? –

+1

向我们展示一些代码并向我们展示这些字符的外观。我认为这一定是一个编码问题,你是否有这样的字符:''和'Ã''?通常情况下,当你有UTF-8数据并读取它时,比如说ISO-8859-1,你最终会得到两个字符,而不是你期望的。是什么让你认为你的XML是utf-8,因为标题是这么说的? –

+1

@AbhishekKarande:我没有投弃权票,但我也没有投票赞成。这就是说,我认为你的问题可以使用一些代码以及预期的和实际的结果。 –

0

我的问题就解决了我的XML阅读器添加

DocumentBuilder db = dbf.newDocumentBuilder(); ByteArrayInputStream bis = new ByteArrayInputStream(xml.getBytes("UTF-8")); doc = db.parse(bis); 在我的代码,所以现在我可以显示德国的字符正确...

+1

我很高兴你的问题得到解决,但它可能不是理想的解决方案。你正在做的是这样的:你将XML作为一个String(我想),并通过调用'getBytes(...)'来创建一个byte []。然后你把它交给解析器。这可能适用于少量数据,但可能会随着更大的数据而失败。 XML从哪里来?当您从网络服务器收到它或从文件中读取它时,您可以在正确的时候获得流,然后将它传递给解析器。 –