我正在将文本加载到 TextView 但问题是文本充满了 ASCII 字符,因此当文本加载到 TextView 时,我什么也看不到,或者它完全显示了其他字符。例如,用“?”代替字符“ó” 显示在黑色方块内。
我的问题是,如何将 ASCII 字符转换为字符串?
感谢您的帮助。
€ 不是 Ascii 字符。相反,您可能正在对源文件或类似文件使用 Windows-1252 编码。在那里,€ 被映射到一个字符 128,它在 Unicode 中是一个控制字符。
编辑:很明显,文本是从互联网加载的,并且不可修改,等等,那么下面的代码可以工作:
InputStreamReader reader = new InputStreamReader(
yourInputStream, "windows-1252");
// or what ever seems to be the correct encoding!
StringBuilder builder = new StringBuilder();
while (reader.ready())
{
builder.append(reader.read());
}
reader.close();
String string = builder.toString();