7

我正在尝试在 java 中显示阿拉伯语文本,但它显示垃圾字符(例如:¤[ï߯[î),或者有时在我打印时只有问号。我如何使它打印阿拉伯语。我听说它与 unicode 和 UTF-8 有关。这是我第一次使用语言,所以不知道。我正在使用 Eclipse Indigo IDE。

编辑:如果我使用 UTF-8 编码,那么 "¤[ï߯[î" 字符将变为 "????????" 人物。

4

3 回答 3

7

对于初学者,你可以看看这里。这应该允许您在其控制台中使 Eclipse 打印 unicode(我不知道它是否是 Eclipse 支持开箱即用的东西,无需任何额外的调整)

如果这不能解决您的问题,您很可能遇到程序使用的编码问题,因此您可能希望以类似于以下方式创建字符串:

String str = new String("تعطي يونيكود رقما فريدا لكل حرف".getBytes(), "UTF-8");

这至少对我有用。

于 2012-05-21T09:13:54.303 回答
2

If you embed the text literally in the code make sure you set the encoding for your project correctly.

于 2012-05-21T09:06:37.437 回答
1

这适用于 Java SE、Java EE 还是 Java ME?如果这是用于 Java ME,如果您使用 LWUIT,则必须制作自定义 GlyphUtils。下载此文件: http ://dl.dropbox.com/u/55295133/U0600.pdf 查看 unicode 编码列表。并查看此线程: https ://stackoverflow.com/a/9172732/1061371 在答案中(帖子)由 bernama Alex Kliuchnikau 编辑的 Mohamed Nazar,“以下代码可用于在 J2ME 中显示阿拉伯文本,String s=new String("\u0628\u06A9".getBytes(), "UTF-8");其中\u0628\u06A9两个阿拉伯字母的 unicode”查看 U0600.pdf 文件,因此我们可以看到 Mohamed Nazar 和Alex Kliuchnikau 举例说明在阿拉伯语中创建“ba”和“kaf”字符。

那么您必须考虑的最后一点是:“确保您的 UI 支持 unicode(我的意思是阿拉伯语)字符。” 像 LWUIT 还不支持 unicode(我的意思是阿拉伯语)字符。如果您的应用程序正在使用 LWUIT,您应该制作自定义代码。

于 2012-05-22T01:29:49.933 回答