nanjj

iconv

Monday, 15 November 2010

繁简转换并没有尽善尽美的解决方案,按单字转换有 98%的准确率,剩下那 2%, 需要分词了。分词本身就没有 100%正确的算法了。

基于 iconv 可以这么做:

iconv -f BIG5 -t GB2312

注意这是按单字转的。如果要从 UTF-8 过来,还更麻烦些:

iconv -f UTF-8 -t BIG5 | iconv -f BIG5 -t GB2312 | iconv -f GB2312 -t UTF-8

这也不支持 GBK 的。

更好些的是 cconv

cconv -f BIG5 -t GBK

处理 UTF 也方便些:

cconv -f UTF8-CN -t UTF8-TW

支持更大些字符集。

据说也支持分词但我没试出来。还提供 php 的库支持。那用 JNI 集成到 Java 里也 不难,至少在 Linux 下是这样。