当我在 Java 中打印包含阿拉伯字符的字符串时,它显示为??????
. 我怎样才能解决这个问题?
BiDi算法实现的阿拉伯字符串结果应该支持阿拉伯语作为RTL
语言
您是否尝试过使用
Character.codepointAt(arabicString, 0)
检查字符串实际上是否包含阿拉伯语集中的 Unicode 代码点?
或者你可以使用
Character.UnicodeBlock block =
Character.UnicodeBlock.of(Character.codepointAt(arabicString, 0));
然后检查它block
的值是否等于Character.UnicodeBlock.ARABIC
。
如果字符串确实包含阿拉伯代码点,那么问题可能出在您的输出控制台上。可能您没有可以显示这些代码点字符的字体。
如果字符串不包含阿拉伯代码点,那么您会从字符串的提供者那里得到意外的结果。