码迷,mamicode.com
首页 > 移动开发 > 详细

Android-- 汉字转拼音开源工具包Jpinyin介绍

时间:2015-12-13 15:31:35      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:

 最近要实现一个根据词语得到词语对应拼音的功能,找到了Jpinyin这个开源工具包,使用下来发现它非常强大,完全满足我的需求,下面对它做一个简单的介绍,希望能够帮助到有需要的朋友。

 一、项目介绍:

        JPinyin是一个汉字转拼音的Java开源类库,在PinYin4j的功能基础上做了一些改进。

        【JPinyin主要特性】
1、准确、完善的字库;
        Unicode编码从4E00-9FA5范围及3007(〇)的20903个汉字中,JPinyin能转换除46个异体字(异体字不存在标准拼音)之外的所有汉字;
2、拼音转换速度快;
        经测试,转换Unicode编码从4E00-9FA5范围的20902个汉字,JPinyin耗时约100毫秒。
3、多拼音格式输出支持;
        JPinyin支持多种拼音输出格式:带音标、不带音标、数字表示音标以及拼音首字母输出格式;
4、常见多音字识别;
        JPinyin支持常见多音字的识别,其中包括词组、成语、地名等;
5、简繁体中文转换

项目地址:JPinyin是一个汉字转拼音的Java开源类库

 

二、实现原理:

        通过阅读源代码发现,JPinyin的实现原理是通过将生字、词组和对应的拼音以及简繁汉字存放在数据库,然后通过代码操作数据库来实现汉字/词组转拼音和汉字简繁互转的,数据库都是加密的,不能扩充,但这个工具已经比较完善了,没有必要自己去扩充数据库,经本人测试,未发现有转换错误的问题。

技术分享

 

三、核心方法说明:

Jpinyin里面一共有四个类:

ChineseHelper.java     汉字简繁体转换类

PinyinFormat.java         拼音格式类

PinyinHelper.java          汉字转拼音类

PinyinResource.java    资源文件加载类

下面的PinyinFormat   有这几种格式 :

  1. WITH_TONE_NUMBER--数字代表声调
  2. WITHOUT_TONE--不带声调
  3. WITH_TONE_MARK--带声调

 


 

//单个汉字 ---> 拼音
public static String[] convertToPinyinArray(char c, PinyinFormat pinyinFormat)

//单个汉字 --->   带声调格式的拼音
public static String[] convertToPinyinArray(char c)

//字符串  ---->  拼音     @param separator 拼音分隔符
public static String convertToPinyinString(String str, String separator, PinyinFormat pinyinFormat)

//字符串--->带声调格式的拼音
public static String convertToPinyinString(String str, String separator)

//判断一个汉字是否为多音字
public static boolean hasMultiPinyin(char c)

//字符串--->拼音的首字母
public static String getShortPinyin(String str)

 

 

 

 

 

 

 

 

 

 

 

Android-- 汉字转拼音开源工具包Jpinyin介绍

标签:

原文地址:http://www.cnblogs.com/zrui513/p/5042834.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!