功能:本工具类可以完成汉字转 全拼 、简拼。
实现原理:借助pinyin4j开源项目
<dependency>
<groupId>com.belerweb</groupId>
<artifactId>pinyin4j</artifactId>
<version>2.5.1</version>
</dependency>
一言不合上代码:
package com.dusk.common.util;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
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;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 拼音转换类工具类
* @author dushangkui
*
*/
public class PinyinUtil {
private static final Logger LOG = LoggerFactory.getLogger(PinyinUtil.class);
/**
* 汉字转拼音(全拼)
*
* @param src
* @return
*/
public static String getPinyin(String src) {
char[] srcCharArray = src.toCharArray();
// 设置汉字拼音输出的格式
HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();
outputFormat.setCaseType(HanyuPinyinCaseType.LOWERCAS