java 根據(jù)漢字生成拼音全拼或拼音首字母的示例
1.情景展示
java 根據(jù)中文生成對(duì)應(yīng)的拼音
2.準(zhǔn)備工作
所需jar包:pinyin4j-2.5.0.jar
3.解決方案
導(dǎo)包
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;
代碼實(shí)現(xiàn)
/** * 根據(jù)漢字生成拼音全拼或拼音首字母 * @explain * @author Marydon * @creationTime 2020年5月14日下午4:26:30 * @version 1.0 * @since * @email marydon20170307@163.com */public class GetPinyin { /** * 得到全拼 * @param str * @return 全拼(小寫) */ public static String getPinYin(String str){char t1[]=null;t1=str.toCharArray();String[] t2=new String[t1.length];HanyuPinyinOutputFormat t3=new HanyuPinyinOutputFormat();t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);t3.setVCharType(HanyuPinyinVCharType.WITH_V);String t4='';int t0=t1.length;try { for ( int i = 0; i < t0; i++ ) {//是用來判斷是不是中文的一個(gè)條件,采用的是unicode編碼if(Character.toString(t1[i]).matches('[u4E00-u9FA5]+')){ t2= PinyinHelper.toHanyuPinyinStringArray(t1[i],t3); t4+=t2[0];}else { t4+=Character.toString(t1[i]);} } return t4;} catch ( BadHanyuPinyinOutputFormatCombination badHanyuPinyinOutputFormatCombination ) { badHanyuPinyinOutputFormatCombination.printStackTrace();}return t4; } /** * 得到漢字首字母的拼音 * @param str * @return 拼音首字母(大寫) */ public static String getPinYinHeaderChar(String str){String convert='';for ( int i = 0; i < str.length(); i++ ) { char word=str.charAt(i); String[] pinYinArray=PinyinHelper.toHanyuPinyinStringArray(word); if ( pinYinArray!=null ){convert+=pinYinArray[0].charAt(0); }else {convert+=word; }}return convert.toUpperCase(); } //測試 public static void main(String[] args) {System.out.println(getPinYin('火影忍者M(jìn)arydon'));System.out.println(getPinYinHeaderChar('海賊王')); }}
4.效果展示

以上就是java 根據(jù)漢字生成拼音全拼或拼音首字母的示例的詳細(xì)內(nèi)容,更多關(guān)于Java 漢字生成拼音的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. 詳解Android studio 動(dòng)態(tài)fragment的用法2. 基于android studio的layout的xml文件的創(chuàng)建方式3. 編程語言PHP在Web開發(fā)領(lǐng)域的優(yōu)勢(shì)在哪?4. 解決Android studio xml界面無法預(yù)覽問題5. 什么是python的自省6. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁效果(實(shí)例代碼)7. 圖文詳解vue中proto文件的函數(shù)調(diào)用8. Android如何加載Base64編碼格式圖片9. Springboot Druid 自定義加密數(shù)據(jù)庫密碼的幾種方案10. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)

網(wǎng)公網(wǎng)安備