如何使用ICU库转换日语半角/全角字符



我对java不太熟悉(来自c++/c#(。我需要使用java将一些文档从半角日语字符转换为全角字符。

有人会友善一点,并提供一些例子作为开始。我没能找到一些样品。

只是一个注释,它必须是Java。

在日本博客Arai的网站上发现了这个:

String data1 = "全角ひらがな"; // full-width hiragana
String data2 = "全角カタカナ"; // full-width katakana
String data3 = "半角カタカナ";    // half-width katakana
Transliterator transliterator = Transliterator.getInstance("Hiragana-Katakana");
System.out.println(transliterator.transliterate(data1));
System.out.println(transliterator.transliterate(data2));
System.out.println(transliterator.transliterate(data3));

这将导致所有3个日语字符串都被音译,正如您所期望的那样。试试看,如果不管用,就告诉我。

您看过关于该主题的ICU用户指南和ICU APIdoc吗?您可以使用Trans迭代器演示来检查行为,例如"Halfwidth Fullwidth">

我创建了一个小而简单的库来处理Java中所有类型的假名转换,详细信息请点击

要从半宽转换为全宽,只需下载JAR,然后编写如下代码:

import mariten.kanatools.KanaConverter;
// rest of code...
String half_width = "半角カタカナ";
int conv_flags = KanaConverter.OP_HAN_KATA_TO_ZEN_KATA;
String full_width = KanaConverter.convertKana(half_width, conv_flags);
System.out.println(full_width)
//半角カタカナ

最新更新