Java实用工具类-将汉字转为拼音
生活随笔
收集整理的這篇文章主要介紹了
Java实用工具类-将汉字转为拼音
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 導入對應的jar包
<dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j</artifactId><version>2.5.1</version></dependency>2. 編寫ChineseToPinyinUtils工具類
package com.zhangsan.utils;import com.google.common.collect.Lists; 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.exception.BadHanyuPinyinOutputFormatCombination;import java.util.List;/*** 漢字轉換為拼音** @author Red*/ public class ChineseToPinyinUtils{public static void main(String[] args) {List<String> str = Lists.newArrayList();str.add("賈絲萌");str.add("張繼偉");str.add("郭恩澤");str.add("史睿");str.add("張潔");str.add("李芙搖");str.add("王琪彪");ToPinyin(str).forEach(System.out::println);}/*** TODO 獲取字符串的第一個字母** @param chinese* @return java.lang.String* @Author ZhangSan_Plus* @Description* @Date 11:13 2021/11/13**/public static String ToFirstChar(String chinese) {String pinyinStr = "";char[] newChar = chinese.toCharArray();HanyuPinyinOutputFormat defaultFormat = getPinyinOutPut();for (int i = 0; i < newChar.length; i++) {if (newChar[i] > 128) {try {pinyinStr += PinyinHelper.toHanyuPinyinStringArray(newChar[i], defaultFormat)[0].charAt(0);} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}} else {pinyinStr += newChar[i];}}return pinyinStr;}/*** TODO 獲取HanyuPinyinOutputFormat 初始化對象** @param* @return net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat* @Author ZhangSan_Plus* @Description* @Date 11:16 2021/11/13**/private static HanyuPinyinOutputFormat getPinyinOutPut() {HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);return defaultFormat;}/*** TODO 將漢字轉為拼音** @param chinese 中文集合(可根據執行需要進行靈活變動)* @return java.util.List<java.lang.String>* @Author ZhangSan_Plus* @Description* @Date 11:16 2021/11/13**/public static List<String> ToPinyin(List<String> chinese) {List<String> pinyin = Lists.newArrayList();chinese.forEach(c -> {String pinyinStr = "";char[] newChar = c.toCharArray();HanyuPinyinOutputFormat defaultFormat = getPinyinOutPut();for (int i = 0; i < newChar.length; i++) {if (newChar[i] > 128) {try {pinyinStr += PinyinHelper.toHanyuPinyinStringArray(newChar[i], defaultFormat)[0];} catch (BadHanyuPinyinOutputFormatCombination e) {e.printStackTrace();}} else {pinyinStr += newChar[i];}}pinyin.add(pinyinStr);});return pinyin;} }總結
以上是生活随笔為你收集整理的Java实用工具类-将汉字转为拼音的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 红包算法_JAVA实现拼手气红
- 下一篇: ubuntu中vim编辑模式退格键无法删