目录
pinyin
pinyinhttps://github.com/houbb/pinyin pinyin 是 java 实现的高性能中文拼音转换工具。
主要的功能
支持转换长文本
支持多音字
支持多种拼音标注方式
支持中文分词
支持中文繁简体
支持自定义拼音词库
支持判断是否为同音字
支持同音字
主要的方法
功能测试
maven 导入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>pinyin</artifactId>
<version>0.3.1</version>
</dependency>
测试代码
import com.github.houbb.pinyin.constant.enums.PinyinStyleEnum;
import com.github.houbb.pinyin.util.PinyinHelper;
import java.util.List;
import java.util.Map;
public class Test {
public static void main(String[] args) {
// 施氏食狮史
System.out.println("石 (shí) 室 (shì) 诗 (shī) 士 (shì) 施 (shī) 氏 (shì),嗜 (shì) 狮 (shī),誓 (shì) 食 (shí) 十 (shí) 狮 (shī)。");
String pinyin, text;
text = "石室诗士施氏,嗜狮,誓食十狮。";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 中文转拼音
text = "中文转拼音";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
text = "中文转拼音";
pinyin = PinyinHelper.toPinyin(text, PinyinStyleEnum.NORMAL);
System.out.println(text);
System.out.println(pinyin);
// 英文转拼音
text = "English";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// null
text = null;
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// ""
text = "";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 多音字转拼音
char ch = '那';
List<String> pinyinList;
pinyinList = PinyinHelper.toPinyinList(ch);
System.out.println(ch);
System.out.println(pinyinList);
pinyinList = PinyinHelper.toPinyinList(ch, PinyinStyleEnum.DEFAULT);
System.out.println(ch);
System.out.println(pinyinList);
pinyinList = PinyinHelper.toPinyinList(ch, PinyinStyleEnum.NORMAL);
System.out.println(ch);
System.out.println(pinyinList);
pinyinList = PinyinHelper.toPinyinList(ch, PinyinStyleEnum.FIRST_LETTER);
System.out.println(ch);
System.out.println(pinyinList);
pinyinList = PinyinHelper.toPinyinList(ch, PinyinStyleEnum.INPUT);
System.out.println(ch);
System.out.println(pinyinList);
// 中文繁体转拼音
text = "中文繁體轉拼音";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 中文拼音混合转拼音
// text = "zhong wen中文"
text = "zhong wen 中文";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 地名
text = "重庆";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 人名 - 有问题
text = "仇五";
pinyin = PinyinHelper.toPinyin(text);
System.out.println(text);
System.out.println(pinyin);
// 同音字
char hanzi = '中';
Map<String, List<String>> map = PinyinHelper.samePinyinMap(hanzi);
System.out.println(hanzi);
System.out.println(map);
// 同音字 - 按照拼音及声调
String pinyinNumLast = "zhong1";
pinyinList = PinyinHelper.samePinyinList(pinyinNumLast);
System.out.println(text);
System.out.println(pinyinList);
}
}
工具源地址
https://github.com/houbb/pinyinhttps://github.com/houbb/pinyin