zoukankan      html  css  js  c++  java
  • 将汉字转成拼音

    转成拼音工具类:

    package utils;
    
    import net.sourceforge.pinyin4j.PinyinHelper;
    
    public class PinyinUtils {
        /**
         * 提取每个汉字的首字母
         * 
         * @param str
         * @return String
         */
        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;
        }
    
        /**
         * 获取汉字完整拼音
         * 
         * @param str
         * @return
         */
        public static String getPinYin(String str) {
            String value = "";
            for (int j = 0; j < str.length(); j++) {
                char word = str.charAt(j);
                String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
                if (pinyinArray != null) {
                    value += pinyinArray[0].substring(0,
                            pinyinArray[0].length() - 1);
                }
            }
            return value;
        }
    }

    测试类:

    package szoa;
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    
    public class testPinyin {
        
    
        public static void main(String[] args) throws IOException {
            
            String filename = "C:\Users\sjx\Desktop\a.txt";
            BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filename), "utf-8")); //这里可以控制编码
            String line = null;
            BufferedWriter  out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("C:\Users\sjx\Desktop\b.txt",true)));
            while ((line = br.readLine()) != null) {
             line = PinyinUtils.getPinYin(line);
              out.write(line + "
    ");
            }
            out.close();
        }
    }
  • 相关阅读:
    node同时验证手机号和座机号
    导入excle到服务器时候删除服务器历史数据
    杂七杂八
    c# 导出表格 api
    c# 导出表格
    element split 将多个单号分隔
    vue 前台传后台
    vue.js 使用时间组件 日期少一天的问题
    layui 文字滚动
    CRT&&EXCRT学习笔记
  • 原文地址:https://www.cnblogs.com/sjxbg/p/10440151.html
Copyright © 2011-2022 走看看