pinyin4j是一个开源项目,使用它可以很容易的获取汉字的拼音,这也是我们经常需要用到的功能:下面是一个应用,获取汉字首字母或者全拼的方法
package com.yjck.pinyin.util;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
public class PinYinUtil {
/**
* 获取汉字串拼音首字母,英文字符不变
* @param chinese 汉字串
* @return 汉语拼音首字母
*/
public static String getFirstSpell(String chinese) {
StringBuffer pybf = new StringBuffer();
char[] arr = chinese.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i < arr.length; i++) {
if (arr[i] > 128) {
try {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(arr[i], defaultFormat);
if (temp != null) {
pybf.append(temp[0].charAt(0));
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
} else {
pybf.append(arr[i]);
}
}
return pybf.toString().replaceAll("\\W", "").trim();
}
/**
* 获取汉字串拼音,英文字符不变
* @param chinese 汉字串
* @return 汉语拼音
*/
public static String getFullSpell(String chinese) {
StringBuffer pybf = new StringBuffer();
char[] arr = chinese.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i < arr.length; i++) {
if (arr[i] > 128) {
try {
pybf.append(PinyinHelper.toHanyuPinyinStringArray(arr[i], defaultFormat)[0]);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
} else {
pybf.append(arr[i]);
}
}
return pybf.toString();
}
}
ok,这就完了,已经可以满足我们的日常需求了吧,源代码上传!
分享到:
相关推荐
本文实例讲述了JS实现获取汉字首字母拼音、全拼音及混拼音的方法。分享给大家供大家参考,具体如下: 这里需要用到一个js获取汉字拼音的插件,可点击此处本站下载。 运行效果如下: 完整示例代码: <!DOCTYPE ...
默认支持的是ANSI的字符集,需要使用其他字符集时,只要用记事本将pinyin.txt保存为相应的字符集重新生成即可。做一些字符串处理,用空格或者换行隔开,也可以获取汉字的全拼
oracle汉字转拼音 获得全拼、拼音首字母、拼音截取等
--此函数默认返回汉字拼音的首字母,第二个参数不为空则返回全拼。 create or replace function f_getFirstOrFullSpell(p_cnStr In varchar2,p_sign In number default null) return varchar2 as lv_spell varchar2...
将汉字转为全拼或返回拼音首字母(Oracle SQL语句)
汉字转拼音声母首字母 dll delphi
Unicode汉字拼音全拼、首字母Delphi查询函数(推荐使用) { iMode 二进制功能位说明 X X X X X X X X X X X X X X X X 3 2 1 1: 0 - 只取各个汉字声母的第一个字母; 1 - 全取 2: 0 - 遇到不能翻译的字符不...
Java实现汉字转拼音功能,包括首字母和全拼,为大家减少时间,为此提供便捷。
汉字转换成拼音全拼也能转换成首写字母,如有需要联系本人.
oracle汉字转拼音package_获得全拼——拼音首字母_拼音截取等,供大家参考!!!
最近在做一个按拼音首字母排序的ListView需要取汉字拼音首字母,做了如下的方法:
oracle汉字转换成拼音首字母、全拼,各种转换类型比较齐全,oracle汉字转换五笔首字母链接https://blog.csdn.net/weixin_40912627/article/details/88710064
汉字转拼音,可以大小写、全拼、首字母,注释清晰明了。修改好的发给大家学习学习
汉字转换为全拼或者首字母形式,oracle使用的sql
将汉字转换为全拼或首字母,oracle 默认返回汉字拼音的首字母,第二个参数不为空则返回全拼
汉字转拼音,全拼,首字母
javascript编写的可以实现汉字转换为拼音的工具,里面的方法有获取汉字的首字母大写拼音 还有获取汉字大写的全拼 和获取汉字小写全拼。里面有一个工具js和一个使用示例
Oracle中进行汉字转换成拼音,通过参数不同可以返回拼音首字母或全拼: --调用方式: SELECT f_getSpell('江西') from dual; --返回 'jx' --SELECT f_getSpell('江西',0) from dual; --返回 'jiangxi'
常用的中文拼音数据库,数据库类型MySQL,共有6565字体,里面包含字体,全拼,小写首字母,大写首字母,InnoDB引擎,已建立关联索引。