java pinyin4j的使用

pinyin4j是一个免费的开源框架,可以把中文(多音字,繁体字)转成拼音,是不是6到不行,而且还可以自定义输出格式等;

官方网站:

http://pinyin4j.sourceforge.net/

下载后:

java pinyin4j的使用_第1张图片
Paste_Image.png

一 使用(具体请看官方文档):


1.HanyuPinyinOutputFormat类:

格式化输出类,用来设置输出的拼音的格式
常用方法:

setCaseType(HanyuPinyinCaseType caseType) //HanyuPinyinCaseType是个枚举类,用来设置转换后拼音大小写的,有以下枚举值,以"民"为例

Options Output
LOWERCASE min2
UPPERCASE MIN2

setToneType(HanyuPinyinToneType toneType)//用来设置音调相关的东西,有以下枚举值,以"打"为例

Options Output
WITH_TONE_NUMBER da3(代表第三声调)
WITHOUT_TONE da
WITH_TONE_MARK

2.PinyinHelper类:

将中文转成拼音的工具类
常用方法:
toHanyuPinyinStringArray(char ch)//根据一个中文字符返回一个拼音String[] (因为一个汉字可以有多个发音)
toHanyuPinyinStringArray(char ch, HanyuPinyinOutputFormat outputFormat)//根据一个中文字符和格式输出类返回一个拼音String []

二 Demo:

public static void main(String[] args) throws BadHanyuPinyinOutputFormatCombination {
        //1.创建一个格式化输出对象
        HanyuPinyinOutputFormat outputF = new HanyuPinyinOutputFormat();
        //2.设置好格式
        outputF.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
        outputF.setCaseType(HanyuPinyinCaseType.LOWERCASE);
        char ch='间';
        String str[] = PinyinHelper.toHanyuPinyinStringArray(ch,outputF);
        //3.打印输出
        System.out.println(Arrays.toString(str));   
        //结果为:[jian, jian],因为间有多音,但是我们选择的音调类型是WITHOUT_TONE,所以拼音数组后面也没有对应音调数字
    }

以下是转自别人大神的示例代码:

http://www.open-open.com/lib/view/open1392087364364.html

你可能感兴趣的:(java pinyin4j的使用)