How to meet the Chinese-to-Pinyin needs of pinyin4j
How to meet the needs of pinyin4j Chinese to Pinyin, many novices are not very clear about this, in order to help you solve this problem, the following editor will explain for you in detail, people with this need can come to learn, I hope you can gain something.
Introduce dependency
/ / https://mvnrepository.com/artifact/com.belerweb/pinyin4j / / Chinese characters to Pinyin compile group: 'com.belerweb', name:' pinyin4j', version: '2.5.1'
Write the tool class of translating Chinese into English
Import lombok.extern.slf4j.Slf4j;import net.sourceforge.pinyin4j.PinyinHelper;import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination @ Slf4jpublic class PinYinUtil {/ * Chinese characters to Pinyin * * / public static String getPinYin (String str) {HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat (); format.setCaseType (HanyuPinyinCaseType.LOWERCASE); format.setToneType (HanyuPinyinToneType.WITHOUT_TONE); format.setVCharType (HanyuPinyinVCharType.WITH_V); String output = "" If (str! = null & & str.length () > 0 & &! "null" .equals (str)) {char [] input = str.trim () .toCharArray (); try {for (int I = 0; I < input.length) If (java.lang.Character.toString (input [I]) .matches ("[\\ u4E00 -\\ u9FA5] +")) {String [] temp = PinyinHelper.toHanyuPinyinStringArray ( Input [i] Format) Output + = temp [0];} else output + = java.lang.Character.toString (input [I]) } catch (BadHanyuPinyinOutputFormatCombination e) {log.error ("pinyinUtils", e);}} else {return "*";} return output }} is it helpful for you to read the above content? If you want to know more about the relevant knowledge or read more related articles, please follow the industry information channel, thank you for your support.