zoukankan      html  css  js  c++  java
  • java--->汉字转成拼音(简单实现)

    汉字转换成拼音 :

    首先jar:pinyin4j-2.5.0.jar

    或:

    <dependency>
        <groupId>com.belerweb</groupId>
        <artifactId>pinyin4j</artifactId>
        <version>2.5.0</version>
    </dependency>

    Java代码:

    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;
    
    public class PinYinUtil {
        public static void main(String[] args) {
            System.out.println(getPinyin("中国红123")); //--zhongguohong123
        }
    
        /**
         * @param china (字符串 汉字)
         * @return 汉字转拼音 其它字符不变
         */
        public static String getPinyin(String china){
            HanyuPinyinOutputFormat formart = new HanyuPinyinOutputFormat();
            formart.setCaseType(HanyuPinyinCaseType.LOWERCASE);
            formart.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
            formart.setVCharType(HanyuPinyinVCharType.WITH_V);
            char[] arrays = china.trim().toCharArray();
            String result = "";
            try {
                for (int i=0;i<arrays.length;i++) {
                    char ti = arrays[i];
                    if(Character.toString(ti).matches("[\u4e00-\u9fa5]")){ //匹配是否是中文
                        String[] temp = PinyinHelper.toHanyuPinyinStringArray(ti,formart);
                        result += temp[0];
                    }else{
                        result += ti;
                    }
                }
            } catch (BadHanyuPinyinOutputFormatCombination e) {
                e.printStackTrace();
            }
    
            return result;
        }
    }
  • 相关阅读:
    第三篇:服务提供与Feign调用
    第二篇:服务提供与Rest+Ribbon调用
    第一篇:注册中心Eureka
    先导篇:SpringCloud介绍篇
    将list集合按指定长度进行切分,返回新的List<List<??>>集合
    清空数据的简便语法
    JDK 1.8 新特性之Date-Time API
    读书笔记-我国弱势群体犯罪问题研究
    读书笔记-沙漠里的细水微光
    读书笔记-没有空白
  • 原文地址:https://www.cnblogs.com/cai170221/p/13608217.html
Copyright © 2011-2022 走看看