Отображение арабского текста в J2me с использованием Eclipse - PullRequest
3 голосов
/ 06 февраля 2012

Я новичок в J2me, пожалуйста, кто-нибудь может сказать мне, как я могу сделать ниже в J2me? ​​

String salam="اَللّٰهُمَّ اِنِّىْ اَسْئَلُكَ رِزْقًاوَّاسِعًاطَيِّبًامِنْ رِزْقِكَ";
byte[] bytes = salam.getBytes("UTF-8");
str1=new String(bytes);
System.out.println("Arabic :"+str1);

он отображает س٠„ام char как этот

IЯ использую Eclipse Indigo Service Release 1.

Ответы [ 3 ]

2 голосов
/ 06 февраля 2012

Вы должны использовать конструктор String, который позволяет указывать кодировку с аргументом, подобным String(byte[], Charset) (Нет Charset в J2ME) или String(byte[], String). В противном случае байтовый массив будет декодирован с использованием платформы по умолчанию, которая может не соответствовать UTF-8.

Пример:

 byte[] utf8bytes = ... //Byte array containing UTF-8 as bytes.
 String string = new String(utf8bytes, "UTF-8");
1 голос
/ 07 февраля 2012

Приведенный ниже код можно использовать для отображения арабского текста в J2ME

String s=new String("\u0628\u06A9".getBytes(), "UTF-8");

, где \u0628\u06A9 - это Unicode двух арабских букв

0 голосов
/ 15 августа 2012

Я нашел решение:
Window > Preferences > General > Content Types

Выберите тип файла, который вы хотите (Text => Java в вашем случае)

Теперь вставьте UTF-8 в кодировку по умолчаниюи нажмите «обновить».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...