1

我的 J2ME 应用程序必须读取不同语言(英语、法语、阿拉伯语)的文件。

这些文件是用 UTF-8 编码编写的,我用以下代码读取它们:

InputStream is = this.getClass().getResourceAsStream("/res/traduct_"+ lang +".txt");
StringBuffer sb = new StringBuffer();
int chars;
while ((chars = is.read()) != -1)
    sb.append((char) chars);
String str = new String(String.valueOf(sb).getBytes("ISO-8859-1"));

这在 Netbeans 模拟器和我的 LG 手机中运行良好,但在其他手机(诺基亚、三星)中,不显示阿拉伯语和法语。只有英语在所有情况下都有效。

我的代码有问题吗?

4

1 回答 1

2

这段代码没有问题:Reading text file in J2ME

String content = "";
Reader in = new InputStreamReader(this.getClass().getResourceAsStream("asdf.txt"), THE_ENCODING);
StringBuffer temp = new StringBuffer(1024);
char[] buffer = new char[1024];
int read;
while ((read=in.read(buffer, 0, buffer.len)) != -1) {
  temp.append(buffer, 0, read);
}
content = temp.toString().

谢谢蒂洛。

于 2012-05-31T08:00:41.557 回答