java取得汉字拼音(pinyin4j)
jar包:pinyin4j.jar
基本用法:
String[] pinyin = PinyinHelper.toHanyuPinyinStringArray('重');
例如“重”字,该方法返回一个String类型的数组:
"zhong4"
"chong2"
“重”是一个多音字,该方法的返回数组包含这个字的所有读音的拼音。每个读音最后有个数字就是音调(第一声 第二声 第三声 第四声,这个不用解释了)
格式化:
上面是最简单的一种获取单个汉字的方式,还可以使用HanyuPinyinOutputFormat来格式化返回拼音的格式。
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat(); // UPPERCASE:大写 (ZHONG) // LOWERCASE:小写 (zhong) format.setCaseType(HanyuPinyinCaseType.LOWERCASE); // WITHOUT_TONE:无音标 (zhong) // WITH_TONE_NUMBER:1-4数字表示英标 (zhong4) // WITH_TONE_MARK:直接用音标符(必须WITH_U_UNICODE否则异常) (zhòng) format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK); // WITH_V:用v表示ü (nv) // WITH_U_AND_COLON:用"u:"表示ü (nu:) // WITH_U_UNICODE:直接用ü (nü) format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE); String[] pinyin = PinyinHelper.toHanyuPinyinStringArray('重', format); //toHanyuPinyinStringArray如果传入的字符不是汉字不能转换成拼音,那么会直接返回null。