如何在Java中从全宽到半角的日文字符转换?

时间:2015-08-31 03:16:01

标签: java encoding character

我正在使用icu项目的类Transliterator来从半角转换为全角字符,如下所示:

Transliterator transliterator = Transliterator.getInstance("Hiragana-Katakana");
String converted = transliterator.transliterate("コンニチハ");  //half-width

converted的结果是:コンニチハ(全宽)

可是:

String converted = transliterator.transliterate("コンニチハ");  //full-width

converted的结果仍然是:コンニチハ(全宽)

我的期望是コンニチハ。任何人都可以帮我解决这个问题吗?

感谢。

1 个答案:

答案 0 :(得分:2)

我找到了答案here。通过使用如下的不同参数来实现这一点非常简单:

Transliterator transliterator = Transliterator.getInstance("Halfwidth-Fullwidth");
String converted = transliterator.transliterate("コンニチハ");  //half-width

converted价值:コンニチハ

Transliterator transliterator = Transliterator.getInstance("Fullwidth-Halfwidth");
String converted = transliterator.transliterate("コンニチハ");  //full-width

converted价值:コンニチハ