我正在将文本加载到TextView中,但问题是文本充满了ASCII字符,所以当文本加载到TextView时,我无法看到任何内容或者显示完全不同的字符。例如,字符“ó”显示为一个黑色方块内的“?”。
我的问题是,如何将ASCII字符转换为字符串?
谢谢您的帮助。
我正在将文本加载到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();