用jpinyin实现汉字转拼音功能 - developer_Kale - 博客园

标签: jpinyin 汉字 拼音 | 发表时间:2017-06-23 07:06 | 作者:
出处:http://www.cnblogs.com

 

一、简介

项目地址:https://github.com/stuxuhai/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里面一共有四个类:

  • ChineseHelper.java     汉字简繁体转换类
  • PinyinFormat.java         拼音格式类
  • PinyinHelper.java          汉字转拼音类
  • PinyinResource.java    资源文件加载类

 

二、主要方法介绍

2.1 convertToPinyinString(Stringstr,Stringseparator)

/*** 将字符串转换成相应格式的拼音
 *@paramstr 需要转换的字符串
 *@paramseparator 拼音分隔符
 *@return字符串的拼音*/publicstaticString convertToPinyinString(String str, String separator, PinyinFormat pinyinFormat)

结果:

      String words = "和气生财";finalString separator = " ";//hé qì shēng cái (默认格式)PinyinHelper.convertToPinyinString(words, separator);

 

2.2 convertToPinyinString(String str, String separator, PinyinFormat pinyinFormat)

/**

 * 将字符串转换成相应格式的拼音

 * @param str 需要转换的字符串

 * @param separator 拼音分隔符

 * @param pinyinFormat 拼音格式:WITH_TONE_NUMBER--数字代表声调,WITHOUT_TONE--不带声调,WITH_TONE_MARK--带声调

 * @return 字符串的拼音

 */

public static String convertToPinyinString(String str, String separator, PinyinFormat pinyinFormat)

结果:

   String str = "你好世界";

PinyinHelper.convertToPinyinString(str,
",", PinyinFormat.WITH_TONE_MARK);//nǐ,hǎo,shì,jièPinyinHelper.convertToPinyinString(str, ",", PinyinFormat.WITH_TONE_NUMBER);//ni3,hao3,shi4,jie4PinyinHelper.convertToPinyinString(str, ",", PinyinFormat.WITHOUT_TONE);//ni,hao,shi,jie

 

2.3 getShortPinyin(String str)

/*** 获取字符串对应拼音的首字母
 *@paramstr 需要转换的字符串
 *@return对应拼音的首字母*/publicstaticString getShortPinyin(String str)

结果:

String str = "你好世界";PinyinHelper.getShortPinyin(str);//nhsj

 

2.4 convertToPinyinArray(char c)
/*** 将单个汉字转换为相应格式的拼音
 *@paramc 需要转换成拼音的汉字
 *@return汉字的拼音*/publicstaticString[] convertToPinyinArray(charc)

结果:

String words = "和气生财";


//
hé hè huó huò húpinyins = PinyinHelper.convertToPinyinArray(words.toCharArray()[0]);

 

2.5 convertToPinyinArray(char c,PinyinFormatpinyinFormat)

/*** 将单个汉字转换为相应格式的拼音
 *@paramc 需要转换成拼音的汉字
 *@parampinyinFormat 拼音格式:WITH_TONE_NUMBER--数字代表声调,WITHOUT_TONE--不带声调,WITH_TONE_MARK--带声调
 *@return汉字的拼音*/publicstaticString[] convertToPinyinArray(charc, PinyinFormat pinyinFormat)

结果:

String words = "和气生财";


//
hé hè huó huò húpinyins = PinyinHelper.convertToPinyinArray(words.toCharArray()[0], PinyinFormat.WITH_TONE_MARK);

 

2.6 hasMultiPinyin(char c)

/*** 判断一个汉字是否为多音字
 *@paramc 汉字
 *@return判断结果,如果是返回true,否则返回false*/publicstaticbooleanhasMultiPinyin(charc)

结果:

 //falseprintln(PinyinHelper.hasMultiPinyin('李'));

 

 

源码下载:

 

大部分内容参考自:http://blog.csdn.net/ekeuy/article/details/40079475?utm_source=tuicool

 

相关 [jpinyin 汉字 拼音] 推荐:

用jpinyin实现汉字转拼音功能 - developer_Kale - 博客园

- -
项目地址:https://github.com/stuxuhai/jpinyin. JPinyin是一个汉字转拼音的Java开源类库,在PinYin4j的功能基础上做了一些改进. Unicode编码从4E00-9FA5范围及3007(〇)的20903个汉字中,JPinyin能转换除46个异体字(异体字不存在标准拼音)之外的所有汉字;.

Ruby世界:汉字转换成拼音

- 董玉伟 - 道喜技术日记 .^. 天天红玉世界

C#汉字转拼音代码分享|建议收藏

- Pei - 博客园-首页原创精华区
/// 包含字符 ASC 码的整形数组. /// 包含汉字拼音的字符串数组. /// 包含要排除处理的字符的字符串数组. ", "“", "”", "‘", "’", "¥", "$", "(", "「", "『", ")", "」", "』", "[", "〖", "【", "]", "〗", "】", "—", "…", "《", "<", "》", ">" };.

Java代码将汉字转换成拼音

- - BlogJava-首页技术区
  //------------------------将汉字转换为全拼-------------------------------.   //判断是否为汉字字符. //----------------------------------------返回中文的首字母--------------------.

C# 使用微软的Visual Studio International Pack 类库提取汉字拼音首字母

- Haipeng - 博客园-首页原创精华区
昨天经过网友提醒,提取汉字拼音的方法可以使用微软的一个类库 Visual Studio International Pack ,今天试了一试,确实好用. 首先下载Visual Studio International Pack 2.0,官方下载地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=7D1DF9CE-4AEE-467F-996E-BEC826C5DAA2.

智能拼音

- jerry - Joyloft-Zenzen的酒楼
有人装纯洁的,就有人装更纯洁的、. 看到公司论坛有人问,TJJTDS是什么意思. 就有人回复,我也不知道,不过我的拼音输入法打出来的是:“他晋级他得胜”. 然后有人纠正:是“他拒绝她的说”;. 然后又有人纠正:“太极集团董事”;. 接着有人反驳:“天津交通堵塞”;. 最后最邪恶的人出来了,他的拼音打出来是:“舔鸡鸡舔到射”….

汉字书体年表

- 无双 - Digidea's Blog
似乎国内这方面资料比较少, 所以自己整理了一个书体年表. 因为没办法对每种字体出现及活跃的年代进行详细考证, 所以时间线基本是按照个人感觉来编排的, 肯定会有一些错误, 欢迎指正.. 详细大图从这里进入: http://typeland.com/Chart/.. 该表主要描述了具有代表性的一些字体互相之间的关联, 以及楷书几大派别对后世雕版字体风格的影响..

超强的汉字写法

- Stanley - 超现实创意网
“美丽的家乡”,原来可以这样写,颇有一番情趣. “孙悟空”写完后是一个人形;“美丽的姑娘”写完后非常漂亮. 看来日后可能就是用种字体来沟通了;. 能用汉字构成一幅幅如此形象、生动的图,太神奇了;. 世界上只有中国才有书法这个词.

好玩的汉字对话

- Syuuto - 河蟹娱乐
1、口对黾说:电打的滋味不好受吧. 对鼍感慨:爬得越高,摔下来就越痛. 对徊感慨:有钱就是不一样,这么坚固的房子,门口还请俩保镖. 2、两对丙说:你们单位裁员啦. 3、澌对厮说:你还在那破厂子干. 4、岐对支说:你要找个靠山啊. 5、申对甲说:我终于熬出头了!. 6、玉对宝说:其实我不带帽子,也和你差不多.

谷歌拼音的脑补优化

- CandyFrankie - 月光博客
  前些天看月光一篇讨论Google拼音的文章有感. 这里提供一个思路,让输入法更简单而不是更复杂. 文中有洁癖、偏执、妄想、超现实内容,如果引起您的不适请自便. 我没有长时间用过紫光和Google以外的任何输入法. 如果文中的一些想法有抄袭其他输入法的嫌疑,那么请推荐给我那个输入法,我立刻去用.   现在Google输入法的UI右边有两个切换按钮.