我的文字需要以拉丁文显示。当文本文件显示在TextView中时,带有问号的小钻石出现在所有字母应该都有重音符号的地方。有人可以帮忙吗?我需要能够以PDF格式显示文本。所以我通过将PDF文本部分复制到文本文件中来获取文本文件。扫描文本文件的代码如下所示:
public String inputStreamToString(InputStream is) throws IOException
{
StringBuffer sBuffer = new StringBuffer();
BufferedReader dataIO = new BufferedReader(new InputStreamReader (is));
String strLine = null;
while ((strLine = dataIO.readLine()) != null)
{
sBuffer.append(strLine + "\n");
}
dataIO.close();
is.close();
return sBuffer.toString();
}
然后在onCreate()中我有这个:
text = (TextView)findViewById(R.id.textView1);
//text.setText("This is a whole lot of text and praying");
InputStream iFile = getResources().openRawResource(idEng);
try {
text.setText(inputStreamToString(iFile));
text.setFocusable(false);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
text.setMovementMethod(new ScrollingMovementMethod());
ELswitch = (ToggleButton)findViewById(R.id.toggleButton1);
ELswitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if(isChecked==true)
{
InputStream iFile = getResources().openRawResource(idLat);
System.out.println(R.raw.sunday_compline_english);
try {
text.setText(inputStreamToString(iFile));
text.setFocusable(false);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else {
InputStream iFile = getResources().openRawResource(idEng);
try {
text.setText(inputStreamToString(iFile));
text.setFocusable(false);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
});
切换按钮使用户可以在英语和拉丁语之间来回切换。问题是拉丁语看起来像这样(带有重音的所有字母都被一个奇怪的问号符号替换):
这是文本文件的问题吗?我应该直接从PDF工作吗?如果有人有任何想法,我真的很感激帮助。谢谢!