| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
10年前发布

pinyin4j学习

1、首先下载pinyin4j的jar包,然后就可以开始使用了

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;    public class Ping4jTest {      //将汉字转化为全拼   public static String getPinyin(String src){    char toChar[]=src.toCharArray();    String[] toCharCp=new String[toChar.length];    HanyuPinyinOutputFormat hanyuFormat=new HanyuPinyinOutputFormat();    hanyuFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);    hanyuFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);    hanyuFormat.setVCharType(HanyuPinyinVCharType.WITH_V);    String ret="";    int to=toChar.length;    try {     for(int i=0;i<to;i++){      //判断是否为汉字字符      if(java.lang.Character.toString(toChar[i]).matches("[\\u4E00-\\u9FA5]+")){       toCharCp=PinyinHelper.toHanyuPinyinStringArray(toChar[i], hanyuFormat);       ret+=toCharCp[0];       }else{       ret=java.lang.Character.toString(toChar[i]);      }     }    } catch (BadHanyuPinyinOutputFormatCombination e) {     e.printStackTrace();    }    return ret;       }      //----------------------------------------返回中文的首字母--------------------   public static String getPinYinHeadChar(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;   }      //-------------------------将字符串转換为ASCII码-----------------------------   public static String getCnASCII(String cnStr){    StringBuffer strBuf=new StringBuffer();    byte[] bGBK=cnStr.getBytes();        for (int i = 0; i < bGBK.length; i++) {     strBuf.append(Integer.toHexString(bGBK[i]&0xff));    }    return strBuf.toString();       }      //--------------------------测试拼音转汉字是否正确----------------------------   public static void main(String[] args){    System.out.println(getPinyin("西安"));    //返回拼音的全拼样式    System.out.println(getPinYinHeadChar("西安"));    //返回拼音的首字母        System.out.println(getCnASCII("西安"));    //返回拼音的ASCII    System.out.println();    }    }

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1402754379978.html
常用工具包 Pinyin4j