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

时间:2011-06-29 16:42:23

标签: java unicode icu

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

有人会善良,并提供一些例子来开始。我没有运气找到一些样品。

只需注意它必须是Java。

3 个答案:

答案 0 :(得分:3)

Japanese blogger Arai's site上找到了这个:

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个日语字符串按预期进行音译。如果它不起作用,请告诉我。

答案 1 :(得分:2)

您是否在主题上看到了ICU userguideICU APIdoc?您可以使用Transliterator demo检查行为,例如“Halfwidth-Fullwidth”

答案 2 :(得分:0)

我已经创建了一个小而简单的库来处理Java中的所有类型的假名转换,details here

要从半宽转换为全宽,只需下载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)
//半角カタカナ