丹麦字母赢得';无法在Android TextView上正确显示

丹麦字母赢得';无法在Android TextView上正确显示,android,character-encoding,lucene,special-characters,Android,Character Encoding,Lucene,Special Characters,我正在写一个丹麦词典应用程序。我可以正确地索引源文件(我想——我使用Lucene和Danishanalyyzer),但是我不能正确地在TextViews和ListViews中显示单词。字母æ、ø和å显示为菱形内的问号。如何解决此问题?问题可能是您的数据源及其编码。如果您从某个web源获取文本,您可能需要将其编码为UTF-8,然后将其放入TextView 我将InputStreamReader编码设置为MacRoman,而不是UTF-8。我将这个InputStreamReader提供给GSON的f

我正在写一个丹麦词典应用程序。我可以正确地索引源文件(我想——我使用Lucene和Danishanalyyzer),但是我不能正确地在
TextView
s和
ListView
s中显示单词。字母
æ
ø
å
显示为菱形内的问号。如何解决此问题?

问题可能是您的数据源及其编码。如果您从某个web源获取文本,您可能需要将其编码为
UTF-8
,然后将其放入
TextView

我将
InputStreamReader
编码设置为
MacRoman
,而不是
UTF-8
。我将这个
InputStreamReader
提供给GSON的
fromJson()
方法。我仍然不明白发生了什么。

我的数据源是一个包含JSON的普通.txt文件。从Eclipse查看文本文件时,丹麦字符会正确显示(由于某些原因,在Sublime text 2中查看时不会正确显示)。我想知道是否可以改为更改
TextView
的编码?我没有在应用程序中使用任何特殊字体。您使用什么来读取.txt文件中的数据?我的猜测是,你可以通过以字节形式获取数据并确保正确转换和解码来解决这个问题。我使用InputStreamReader读取文件,将巨大的单一JSON对象传递给Google GSON进行解析并转换为HashMap,然后索引Lucene中的相关字符串值。@MattQuiros也许inputstreamreader应该设置为utf-8,这里有类似的问题: