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 電話でも問題なく動作しますが、他の電話 (Nokia、Samsung) ではアラビア語とフランス語が表示されません。すべての場合において、英語のみが機能します。

私のコードに何か問題がありますか?

4

1 に答える 1

2

このコードは問題なく動作しています: 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 に答える