我有以下任务:一些以UTF-8书写的拉丁文/阿拉伯文混合文本需要转换为使用POS打印机打印,后者使用的是古老的单字节代码页864。
text.getBytes("ibm-864")
突然显示了许多问号而不是阿拉伯字符,在深入研究代码之后,我了解到转换表中有一些不同版本的阿拉伯字符,用于映射到ibm-864 (在FExx范围内的某个地方,而不是我的文本中的06xx )。
我正在寻找一些代码或库,这些代码或库可以将阿拉伯unicode转换为cp864,更好地将其映射到相应的阿拉伯字符形式(在cp864中,某些字符有孤立的、初始的、中间的和最终的形式),甚至可能对RTL进行反向处理,因为我怀疑硬件是否会自动支持它。
我知道这是非常具体的任务,但为什么不试一试呢?我也知道如何实现这一点,但我想找到一辆现成的自行车:)
有没有人?
另一种可能的解决方案:库可以将unicode阿拉伯语从range U+0600 - U+06FF Arabic
转换为range U+FE70 - U+FF6F Arabic Presentation Forms-B
。然后,我可以安全地在cp864中获取字节。有人看到类似的东西了吗?
发布于 2015-06-10 18:19:45
要将阿拉伯文本输出到相对简单的输出设备,您需要做以下几件事情:
在Java上,ICU库允许您这样做:
https://stackoverflow.com/questions/28982577
复制相似问题