如何把汉字转换成拼音,听上去好像有难度,但是网上搜了一下,发现有这方面的工具包,叫做pin4j,怎么用呢?
/**
*
* @param zhongwen 传入的中文字符串
* @return 返回转换成中文拼音的字符串
*/
public static String getPinYin(String zhongwen)
throws BadHanyuPinyinOutputFormatCombination {
String zhongWenPinYin = "";
char[] chars = zhongwen.toCharArray();
for (int i = 0; i < chars.length; i++) {
String[] pinYin = PinyinHelper.toHanyuPinyinStringArray(chars[i], getDefaultOutputFormat());
if (pinYin != null) {
zhongWenPinYin += pinYin[0];
} else {
zhongWenPinYin += chars[i];
}
}
return zhongWenPinYin;
}
/**
* 设置转换格式
*
* @return 转换格式的实例
*/
private static HanyuPinyinOutputFormat getDefaultOutputFormat() {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.UPPERCASE);// 大写字母
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// 没有声调
format.setVCharType(HanyuPinyinVCharType.WITH_U_AND_COLON); //容许带冒号
return format;
}
d代码很简单,就不多介绍了,