我想将平假名字符转换为半角片假名字符。我该如何在Android上执行此操作?
我有代码将平假名转换为片假名,如下所示......
private char hiraganaTokatakana(String hiraganastring) {
char hiraganachar = Character.valueOf(hiraganastring.charAt(0));
// convert char to unicode value
String hiraganahex = Integer.toHexString(hiraganachar & 0xFFFF);
// convert unicode to decimal
int hiraganadecimalNumber = Integer.parseInt(hiraganahex, 16);
// convert hiragana decimal to katakana decimal
int katakanadecimalNumber = Integer.valueOf(hiraganadecimalNumber) + 96;
// covert decimal to unicode value
String katakanahex = Integer.toString(katakanadecimalNumber, 16);
// convert unicode to char
return (char) Integer.parseInt(String.valueOf(katakanahex), 16);
}
此代码将平假名转换为片假名但是我想将平假名转换为半宽片假名,怎么做?
答案 0 :(得分:0)
这是在Unicode标准中形式化的,java.text.Normalizer应该能够处理它。我不知道它在Android上的效果如何。这是Java SE教程:http://developer.android.com/reference/java/text/Normalizer.html
答案 1 :(得分:0)
http://mariten.github.io/kanatools-java/en/kana-converter/应该有效:
int conversion_flags = OP_ZEN_HIRA_TO_HAN_KATA;
String output = KanaConverter.convertKana(input, conversion_flags);