我是J2me的新手,请有人告诉我在J2me下面怎么做?
String salam="اَللّٰهُمَّ اِنِّىْ اَسْئَلُكَ رِزْقًاوَّاسِعًاطَيِّبًامِنْ رِزْقِكَ";
byte[] bytes = salam.getBytes("UTF-8");
str1=new String(bytes);
System.out.println("Arabic :"+str1);
显示سٓاÙ...像那样的字符
我正在使用Eclipse Indigo Service Release 1。
答案 0 :(得分:2)
您应该使用一个String构造函数,它允许您使用 (J2ME中的No String(byte[], Charset)
Charset
)等参数指定charset 或String(byte[], String)
。否则,将使用平台默认值对字节数组进行解码,该平台默认值可能不是UTF-8。
示例:
byte[] utf8bytes = ... //Byte array containing UTF-8 as bytes.
String string = new String(utf8bytes, "UTF-8");
答案 1 :(得分:1)
以下代码可用于在J2ME中显示阿拉伯语文本
String s=new String("\u0628\u06A9".getBytes(), "UTF-8");
其中\u0628\u06A9
是两个阿拉伯字母的unicode
答案 2 :(得分:-1)
我找到了解决方案:
Window > Preferences > General > Content Types
选择所需的文件类型(Text => java)
现在将UTF-8粘贴到默认编码,然后点击“更新”。