• 项目笔记:中文转拼音工具类


    package com.vrv.cems.utils;
    
    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 ChineseToPinyin {
    
        // 将汉字转换为全拼  
        public static String getPingYin(String src) {  
      
            char[] t1 = null;  
            t1 = src.toCharArray();  
            String[] t2 = new String[t1.length];  
            HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();  
              
            t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);  
            t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);  
            t3.setVCharType(HanyuPinyinVCharType.WITH_V);  
            String t4 = "";  
            int t0 = t1.length;  
            try {  
                for (int i = 0; i < t0; i++) {  
                    // 判断是否为汉字字符  
                    if (java.lang.Character.toString(t1[i]).matches(  
                            "[\u4E00-\u9FA5]+")) {  
                        t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);  
                        t4 += t2[0];  
                    } else  
                        t4 += java.lang.Character.toString(t1[i]);  
                }  
                // System.out.println(t4);  
                return t4;  
            } catch (BadHanyuPinyinOutputFormatCombination e1) {  
                e1.printStackTrace();  
            }  
            return t4;  
        }  
      
        // 返回中文的首字母  
        public static String getPinYinHeadChar(String str) {  
      
            String convert = "";  
            for (int j = 0; j < str.length(); j++) {  
                char word = str.charAt(j);  
                String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);  
                if (pinyinArray != null) {  
                    convert += pinyinArray[0].charAt(0);  
                } else {  
                    convert += word;  
                }  
            }  
            return convert;  
        }  
      
        // 将字符串转移为ASCII码  
        public static String getCnASCII(String cnStr) {  
            StringBuffer strBuf = new StringBuffer();  
            byte[] bGBK = cnStr.getBytes();  
            for (int i = 0; i < bGBK.length; i++) {  
                strBuf.append(Integer.toHexString(bGBK[i] & 0xff));  
            }  
            return strBuf.toString();  
        }  
      
       public static void main(String[] args) {  
            System.out.println(getPingYin("缪洪波"));  
            System.out.println(getPinYinHeadChar("綦江县"));  
            System.out.println(getCnASCII("綦江县"));  
        } 
    }
  • 相关阅读:
    技术汇总:第十五章:MyBatisGenerator数据层代码生成
    java程序员怎么创建自己的网站:第四章:做个网站引入广告赚点小钱
    Spring Cloud:第二章:eureka服务发现
    How to Install and Use Wireshark on Ubuntu
    inotify_add_watch使用注意
    Consul 注册中心
    Spring Security 实现用户认证(Authentication)和用户授权(Authorization)
    数据备份还原
    Ribbon 服务消费
    Spring Boot Admin系统服务监控
  • 原文地址:https://www.cnblogs.com/goloving/p/7844474.html
Copyright © 2020-2023  润新知