您的位置:首页技术文章
文章详情页

java 根据汉字生成拼音全拼或拼音首字母的示例

【字号: 日期:2022-08-21 16:33:53浏览:8作者:猪猪

1.情景展示

java 根据中文生成对应的拼音

2.准备工作

所需jar包:pinyin4j-2.5.0.jar

3.解决方案

导包

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;

代码实现

/** * 根据汉字生成拼音全拼或拼音首字母 * @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++ ) {//是用来判断是不是中文的一个条件,采用的是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('火影忍者Marydon'));System.out.println(getPinYinHeaderChar('海贼王')); }}

4.效果展示 

java 根据汉字生成拼音全拼或拼音首字母的示例

以上就是java 根据汉字生成拼音全拼或拼音首字母的示例的详细内容,更多关于Java 汉字生成拼音的资料请关注好吧啦网其它相关文章!

标签: Java
相关文章: