依赖
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.0</version>
</dependency>
public class PinyinUtil {
public static String ChineseToFirstLetter(String chinese) {
String string = "";
char bts;
int anv = chinese.length();
for (int k = 0; k < anv; k++) {
bts = chinese.charAt(k);
String dkl = String.valueOf(bts);
String str = converterToFirstSpell(dkl);
String upperCase = str.toUpperCase();
String gupperCase = upperCase;
char h;
int j = gupperCase.length();
for (int y = 0; y <= 0; y++) {
h = gupperCase.charAt(0);
string += h;
}
}
return string;
}
public static String converterToFirstSpell(String chines) {
String pinyinName = "";
char[] nameChar = chines.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i < nameChar.length; i++) {
String s = String.valueOf(nameChar[i]);
if (s.matches("[\\u4e00-\\u9fa5]")) {
try {
String[] mPinyinArray = PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat);
pinyinName += mPinyinArray[0];
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
} else {
pinyinName += nameChar[i];
}
}
return pinyinName;
}
}
}
测试效果:
public static void main(String[] args) {
System.err.println(ChineseToFirstLetter("犯我中华者虽远必诛")); // FWZHZSYBZ
System.out.println(converterToFirstSpell("犯我中华者虽远必诛")); // fanwozhonghuazhesuiyuanbizhu
}
侵权必删