java中文转拼音工具类详解
本文实例为大家分享了java中文转拼音工具类的具体代码,供大家参考,具体内容如下
importjava.util.HashSet; importjava.util.Iterator; importjava.util.Set; importjava.util.regex.Matcher; importjava.util.regex.Pattern; importjava.util.regex.PatternSyntaxException; importnet.sourceforge.pinyin4j.PinyinHelper; importnet.sourceforge.pinyin4j.format.HanyuPinyinCaseType; importnet.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; importnet.sourceforge.pinyin4j.format.HanyuPinyinToneType; importnet.sourceforge.pinyin4j.format.HanyuPinyinVCharType; importnet.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination; importorg.slf4j.Logger; importorg.slf4j.LoggerFactory; publicclassPinyinUtil{ publicstaticStringgetPinyin(StringparamString){ returngetPinyinZh_CN(convertStringByChinese(paramString)); } publicstaticStringgetPinyinToUpperCase(StringparamString){ returngetPinyinZh_CN(convertStringByChinese(paramString)).toUpperCase(); } publicstaticStringgetPinyinToLowerCase(StringparamString){ returngetPinyinZh_CN(convertStringByChinese(paramString)).toLowerCase(); } publicstaticStringgetPinyinFirstToUpperCase(StringparamString){ returngetPinyin(paramString); } privatestaticHanyuPinyinOutputFormatgetDefaultFormat(){ HanyuPinyinOutputFormatlocalHanyuPinyinOutputFormat=newHanyuPinyinOutputFormat(); localHanyuPinyinOutputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); localHanyuPinyinOutputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); localHanyuPinyinOutputFormat.setVCharType(HanyuPinyinVCharType.WITH_U_AND_COLON); returnlocalHanyuPinyinOutputFormat; } privatestaticSetconvertStringByChinese(StringparamString){ char[]arrayOfChar1=paramString.toCharArray(); if((paramString!=null)&&(!paramString.trim().equalsIgnoreCase(""))){ char[]arrayOfChar2=paramString.toCharArray(); String[][]arrayOfString=newString[paramString.length()][]; for(inti=0;i =2){ intj=paramArrayOfString[0].length; intk=paramArrayOfString[1].length; intm=j*k; String[]arrayOfString=newString[m]; intn=0; for(inti1=0;i1 0)&&(arrayOfChar[0]>='a')&&(arrayOfChar[0]<='z')){ arrayOfChar[0]=((char)(arrayOfChar[0]-'')); } returnnewString(arrayOfChar); } privatestaticStringgetPinyinZh_CN(Set paramSet){ StringBuilderlocalStringBuilder=newStringBuilder(); inti=0; IteratorlocalIterator=paramSet.iterator(); while(localIterator.hasNext()){ Stringstr=(String)localIterator.next(); if(i==paramSet.size()-1){ localStringBuilder.append(str); }else{ localStringBuilder.append(str+","); } i++; } returnlocalStringBuilder.toString(); } publicstaticStringgetPinYinHeadChar(StringparamString){ StringBufferlocalStringBuffer=newStringBuffer(); if((paramString!=null)&&(!paramString.trim().equalsIgnoreCase(""))){ for(inti=0;i 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。