java漢字轉拼音的處理


  前言:項目要求填加數據時自動化的將名字拼音化。然后百度搜索了一下。對這個插件進行總結

  1、首先下載一個關於裝換的jar包,這里貼上關於maven的部署:

1 <dependency>
2     <groupId>org.clojars.cbilson</groupId>
3     <artifactId>pinyin4j</artifactId>
4     <version>2.5.0</version>
5 </dependency>

  2、貼上代碼

 1 //返回一個拼音字符串,並且首字母大寫
 2     public  String getPingYin(String src) {
 3         char[] t1 = null;
 4         t1 = src.toCharArray();
 5         String[] t2 = new String[t1.length];
 6         HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
 7         t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
 8         t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
 9         t3.setVCharType(HanyuPinyinVCharType.WITH_V);
10         String t4 = "";
11         int t0 = t1.length;
12         try {
13             for (int i = 0; i < t0; i++) {
14                 // 判斷是否為漢字字符
15                 if (java.lang.Character.toString(t1[i]).matches(
16                         "[\\u4E00-\\u9FA5]+")) {
17                     t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);
18                     t4 += t2[0].substring(0, 1).toUpperCase() + t2[0].substring(1);
19                     ;
20                 } else {
21                     t4 += java.lang.Character.toString(t1[i]);
22                 }
23             }
24 
25 
26         } catch (BadHanyuPinyinOutputFormatCombination e1) {
27             e1.printStackTrace();
28         }
29        return t4;
30 
31     }

   3、關於一個首字母大學縮寫

 1 //返回中文的大寫首字母
 2     public  String getPinYinHeadChar(String str) {
 3         String convert = "";
 4         for (int j = 0; j < str.length(); j++) {
 5             char word = str.charAt(j);
 6             String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
 7             if (pinyinArray != null) {
 8                 convert += pinyinArray[0].toUpperCase().charAt(0);
 9             } else {
10                 convert += word;
11             }
12         }
13         return convert;
14     }

  然后直接調用就行啦。

  在座的,可以提點意見,互相學習學習。小白剛入門。謝謝


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM