大家好,欢迎来到IT知识分享网。
前言
具体安装过程
- 在Maven官网去查询
- 引入相关依赖
<!-- https://mvnrepository.com/artifact/com.belerweb/pinyin4j --> <dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.1</version> </dependency>
简单一些用法
其实Pinyin4j的简单用法,实际它的核心类就是PinyinHelper类,我接下来会展示一个简单的api使用方法.
public class PinyinTest01 {
public static void main(String[] args) {
//1.展示单个汉字的字母拼写 String[] res1=PinyinHelper.toHanyuPinyinStringArray('长'); System.out.println(Arrays.toString(res1)); String[] s = PinyinHelper.toHanyuPinyinStringArray('中'); System.out.println(Arrays.toString(s)); } }
具体代码如下:
public static String get(String src,boolean fullSpell){
//1.如果是空字符串,则不处理. if (src == null && src.trim().length() ==0){
return null; } //针对Pinyin4j 做出配置,就是针对lu的lv的配置 ->使用v来配置, HanyuPinyinOutputFormat format=new HanyuPinyinOutputFormat(); format.setVCharType(HanyuPinyinVCharType.WITH_V); //2.如果字符串非空 //遍历字符串的每个字符串,针对每个字符串进行转换,把转换得到的结果,拼接到StringBuilder里面 StringBuffer stringBuffer=new StringBuffer(); for (int i=0;i<src.length();i++){
char ch=src.charAt(i); String[] tmp=null; try {
tmp= PinyinHelper.toHanyuPinyinStringArray(ch,format); } catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace(); } if (tmp == null || tmp.length ==0){
//如果是空的字符,就说明转换失败了. //如果输入的字符,没有汉语拼音,自然就会转换失败. //保留原始字符,加入结果中 stringBuffer.append(ch); }else if(fullSpell){
//拼音结果为true,我们 stringBuffer.append(tmp[0]); }else {
//拼音结果为false //比如 卡 =["ka","qia"] 此时取0号元素,得到了"ka",再取0号字符 stringBuffer.append(tmp[0].charAt(0)); } } return stringBuffer.toString(); } public static void main(String[] args) {
System.out.println(get("长",true)); System.out.println(get("彘二",true)); System.out.println(get("彘二",false)); System.out.println(get("⻓还",true)); System.out.println(get("绿鲤⻥",true)); System.out.println(get("abc",true)); System.out.println(get("中华⼈⺠共和国",false)); System.out.println(get("⻓还",false)); System.out.println(get("abc",false)); // System.out.println(get("中华⼈⺠共和国",true)); System.out.println(get("中华人民共和国",true)); } }
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/111980.html