3 回答
TA贡献1799条经验 获得超9个赞
首先,最合适的希伯来语字节字符集是“ISO-8859-8”(比 windows-1255 好)。尝试玩这个。另外,我会尝试使用字符集 UTF-8 提取字符串。
还有一个很棒的诊断工具可以帮助我诊断和解决与希伯来语和阿拉伯语相关的无数棘手的编码问题
有一个开源 Java 库 MgntUtils,它有一个实用程序,可以将字符串转换为 unicode 序列,反之亦然:
result = "שלום את";
result = StringUnicodeEncoderDecoder.encodeStringToUnicodeSequence(result);
System.out.println(result);
result = StringUnicodeEncoderDecoder.decodeUnicodeSequenceToString(result);
System.out.println(result);
这段代码的输出是:
\u05e9\u05dc\u05d5\u05dd\u0020\u05d0\u05ea
שלום את
这是StringUnicodeEncoderDecoder类的javadoc如您所见,希伯来语的 Unicode 符号是 U+05**,其中第一个希伯来字母 (Alef -א) 是 U+05d0,最后一个希伯来字母 (Tav - ת) 是 U+05ea .
该库可以在Maven Central或Github 找到它作为 Maven 工件和源代码和 javadoc
所以我首先要做的是获取您的原始字符串并将其转换为 unicode 序列,然后看看您实际得到了什么。如果数据不正确,则尝试提取字节并使用 UTF-8 构建字符串。无论如何,我强烈建议使用此实用程序,因为它多次帮助了我。
添加回答
举报