`
jbeduhai
  • 浏览: 504337 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

汉语转换拼音工具类

    博客分类:
  • java
 
阅读更多
import net.sourceforge.pinyin4j.PinyinHelper; 
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType; 
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; 
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
public class PinyinUtil {
private static PinyinUtil instance; 
 
    public static PinyinUtil getInstance() { 
        if (instance == null) { 
            instance = new PinyinUtil(); 
        } 
        return instance; 
    } 
 
    private HanyuPinyinOutputFormat outputFormat = null; 
 
    private HanyuPinyinOutputFormat getOutputFormat() { 
        if (outputFormat == null) { 
            outputFormat = new HanyuPinyinOutputFormat(); 
            outputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); 
            outputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); 
        } 
        return outputFormat; 
    } 
 
    /**
     * 获取字符串中所有字符首字母
     * 
     * @param str
     * @return
     * @throws Exception
     */ 
    public String getStringInitial(String str) { 
        StringBuffer sbf = new StringBuffer(); 
        if (str != null) { 
            for (int i = 0; i < str.length(); i++) { 
                sbf.append(getCharInitial(str.charAt(i))); 
            } 
        } 
        return sbf.toString(); 
    } 
 
    /**
     * 获取中文字符首字母
     * 
     * @param c
     * @return
     * @throws Exception
     */ 
    public String getCharInitial(char c) { 
        try { 
            String[] strs = PinyinHelper.toHanyuPinyinStringArray(c, 
                    getOutputFormat()); 
            String initial = ""; 
            if (strs != null && strs.length > 0) { 
                String str = strs[0]; 
                if (str != null && str.length() > 0) { 
                    initial += str.charAt(0); 
                } 
            } 
            return initial; 
        } catch (Exception ex) { 
            ex.printStackTrace(); 
            return c + ""; 
        } 
    } 
 
    public String getStringPinyin(String chines) { 
 
        char[] nameChar = chines.toCharArray(); 
        String pinyinStr = ""; 
        for (int i = 0; i < nameChar.length; i++) { 
            try { 
                char cha=nameChar[i]; 
                if (nameChar[i] > 128) { 
                    pinyinStr += PinyinHelper.toHanyuPinyinStringArray(cha, getOutputFormat())[0]; 
                } 
            } catch (Exception ex) { 
                ex.printStackTrace(); 
                pinyinStr += nameChar[i]; 
            } 
        } 
        return pinyinStr; 
    } 
 
    /**
     * 获取字符全拼
     * 
     * @param c
     * @return
     */ 
    public String getCharPinyin(char c) { 
 
        try { 
            String[] strs = PinyinHelper.toHanyuPinyinStringArray(c, 
                    getOutputFormat()); 
            String str = ""; 
            if (strs != null && strs.length > 0) { 
                str = strs[0]; 
            } 
            return str; 
        } catch (Exception ex) { 
            ex.printStackTrace(); 
            return c + ""; 
        } 
    } 
 
    public static void main(String[] args) { 
 
        String charInitial = PinyinUtil.getInstance().getCharInitial('牌'); 
        System.out.println(charInitial); 
 
        String charPinyin = PinyinUtil.getInstance().getCharPinyin('牌'); 
        System.out.println(charPinyin); 
 
        String stringInitial = PinyinUtil.getInstance().getStringInitial("品牌"); 
        System.out.println(stringInitial); 
 
        String stringPinyin = PinyinUtil.getInstance().getStringPinyin("品牌"); 
        System.out.println(stringPinyin); 
       
        String test = PinyinUtil.getInstance().getStringInitial("校长测试品牌"); 
        System.out.println(test); 
 
    } 

}
分享到:
评论

相关推荐

    java汉字转拼音工具类

    汉字转拼音,或拼音缩写,pinyin4j。maven,非maven项目如需jar包私聊我

    汉字转拼音工具类

    标题中的“汉字转拼音工具类”指的是一个编程类库或模块,主要用于将汉字转换为对应的汉语拼音。在处理中文文本时,这样的工具非常有用,比如搜索引擎优化、语音合成、自动纠错或者面向非中文用户的界面本地化。这个...

    汉字转拼音常用的工具类

    首先,`PinYinUtil.java`是一个自定义的汉字转拼音工具类,通常由开发者根据实际需求编写。这个类可能包含了各种转换方法,例如将单个汉字转化为拼音,或者将整段中文文本转化为拼音字符串。其中,核心方法可能包括`...

    C# 汉字转全拼音工具类

    本文将详细介绍一个基于 C# 的汉字转拼音工具类——`hzzpy`。该工具类主要利用预先定义好的偏移量数组来计算汉字的拼音。 #### 二、核心概念与原理 ##### 1. 汉字编码与拼音转换 - **汉字编码**:每一个汉字都有其...

    Java汉字转换为拼音工具类

    Java汉字转换为拼音工具类 汉字转换为拼音包括全拼、首字母缩写;全拼可计算出多音字。

    java工具类(包括bean操作工具类、浏览器读取工具累、汉字转拼音工具类、图片处理工具类、ip工具类、随机码工具类、json)

    java工具类(包括bean操作工具类、浏览器读取工具累、汉字转拼音工具类、图片处理工具类、ip工具类、随机码工具类、json)

    拼音工具类(汉字转拼音)

    这个“拼音工具类(汉字转拼音)”就是一个专门解决此类问题的实用工具,它提供了将汉字转换为拼音的能力。下面我们将详细探讨这个工具类的实现原理和相关知识点。 首先,我们要明白汉字转拼音的基本概念。汉字转拼音...

    java汉字转拼音工具类分享

    Java汉字转拼音工具类是一种将汉字转换为拼音的工具类,使用Java语言编写。该工具类可以将汉字转换为拼音,具有很高的实用价值。 知识点1: Java汉字转拼音工具类的作用 Java汉字转拼音工具类可以将汉字转换为拼音...

    java汉字转化为拼音的工具类

    在处理中文字符时,有时我们可能需要将汉字转化为拼音,这就是Java汉字转拼音工具类的作用。这类工具通常提供了方便的方法,允许开发者快速、高效地完成汉字到拼音的转换,从而满足各种需求,如搜索引擎优化、文本...

    汉子转拼音工具类

    【汉字转拼音工具类】是一种在Java编程中常见的实用工具,它主要用于将汉字转换成对应的汉语拼音表示。这种工具在处理中文数据时非常有用,比如搜索引擎优化、文本分析、中文排序以及语音合成等领域。在给定的【描述...

    汉字批量转拼音工具 汉字批量转拼音工具

    汉字批量转拼音工具是一种在信息技术领域中非常实用的软件或应用程序,主要功能是将大量汉字快速转换成对应的汉语拼音。这种工具广泛应用于各种场景,如数据处理、语音合成、搜索引擎优化(SEO)以及中文信息处理等...

    汉字转拼音(包含首字母)工具类

    在Java编程语言中,开发一个汉字转拼音(包含首字母)的工具类是一项常见的任务,尤其是在处理中文字符串、搜索引擎优化(SEO)或者构建用户友好的URL时。这个工具类可以帮助程序将汉字转换为对应的拼音表示,同时...

    汉字转拼音工具软件(实用中文转换器).zip

    《汉字转拼音工具软件——实用中文转换器》 在信息技术高速发展的今天,处理中文字符时,我们时常会遇到需要将汉字转换为拼音的情况。这在编程、数据分析、语音合成等领域尤为常见。这时,一款高效的汉字转拼音工具...

    pinyin支持汉字转换拼音,汉字转换拼音缩写

    标题"pinyin支持汉字转换拼音,汉字转换拼音缩写"表明这是一个关于汉字到拼音转换的工具或库,同时它还具备将汉字转换为拼音缩写的功能。 汉字转换拼音的原理通常基于汉语拼音方案,这是中国国家标准,规定了每个...

    汉字和拼音转换jar和工具类

    这个压缩包中的“拼音和汉字转换jar和工具类”很可能包含了一个预编译的Java库(jar文件),这个库提供了一些类和方法来实现汉字到拼音的转换。使用时,开发者可以直接将这个jar文件引入到Java项目中,通过调用相关...

    java 取汉字拼音工具包

    这类工具包能够帮助开发者轻松地将汉字转换为对应的拼音,便于进行搜索、排序、关键词提取等操作。下面我们将深入探讨这个主题。 在JavaScript环境中,`pinyinjs-master`可能是一个开源库,专门用于处理汉字到拼音...

    常用工具合集(包括汉字转拼音工具、常用数据格式相互转换工具、尺寸相关的工具、加密工具、文件相关的工具、字体相关的工具).zip

    常用工具合集(包括汉字转拼音工具、常用数据格式相互转换工具、尺寸相关的工具、加密工具、文件相关的工具、字体相关的工具、图像相关的工具、键盘工具类、LBS工具类、网络相关工具、通知相关工具、正则表达式工具...

    java 汉字转换拼音

    - `CnToSpell` 类则负责具体的汉字转拼音逻辑。 2. **图形用户界面**: - 使用了 `JFrame`、`JTextArea`、`JButton` 等Swing组件来构建简单的用户界面。 - 用户可以在文本框中输入汉字,点击按钮后,汉字将被...

Global site tag (gtag.js) - Google Analytics