最近做的项目,因为下拉框中的项目太多,需要有个过滤的方法。我想的是键入汉语拼音首字母即时过滤下拉内容。
在网上找了好一会,发现了有个专门用来将中文转换成汉语拼音的Java的开源库,Pinyin4j,
基本用法,如下示例
Java代码
1./**
2. * 汉字转换位汉语拼音,英文字符不变
3. * @author xuke
4. *
5. */
6.public class Cn2Spell {
7.
8. /**
9. * 汉字转换位汉语拼音首字母,英文字符不变
10. * @param chines 汉字
11. * @return 拼音
12. */
13. public static String converterToFirstSpell(String chines){
14. String pinyinName = "";
15. char[] nameChar = chines.toCharArray();
16. HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
17. defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
18. defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
19. for (int i = 0; i < nameChar.length; i++) {
20. if (nameChar[i] > 128) {
21. try {
22. pinyinName += PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0].charAt(0);
23. } catch (BadHanyuPinyinOutputFormatCombination e) {
24. e.printStackTrace();
25. }
26. }else{
27. pinyinName += nameChar[i];
28. }
29. }
30. return pinyinName;
31. }
32.
33. /**
34. * 汉字转换位汉语拼音,英文字符不变
35. * @param chines 汉字
36. * @return 拼音
37. */
38. public static String converterToSpell(String chines){
39. String pinyinName = "";
40. char[] nameChar = chines.toCharArray();
41. HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
42. defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
43. defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
44. for (int i = 0; i < nameChar.length; i++) {
45. if (nameChar[i] > 128) {
46. try {
47. pinyinName += PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0];
48. } catch (BadHanyuPinyinOutputFormatCombination e) {
49. e.printStackTrace();
50. }
51. }else{
52. pinyinName += nameChar[i];
53. }
54. }
55. return pinyinName;
56. }
57.
58. public static void main(String[] args) {
59. System.out.println(converterToFirstSpell("欢迎来到最棒的Java中文社区"));
60. }
61.}
分享到:
相关推荐
java 获取汉字拼音首字母 源码 /** * GB 2312-80 把收录的汉字分成两级。第一级汉字是常用汉字,计 3755 个, 置于 16~55 * 区,按汉语拼音字母/笔形顺序排列;第二级汉字是次常用汉字, 计 3008 个,置于 56~...
仿电话簿按拼音快速索引界面功能,内含汉字转拼音工具 [注:本内容来自网络,在此分享仅为帮助有需要的网友,如果侵犯了您的权利,麻烦联系我,我会第一时间删除,谢谢您。]
Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音 。
实现按拼音排序... 按A到Z,可点击选择~.. 详情看效果~
import java.io.UnsupportedEncodingException; /** * * @author zsw 中文转为拼音 * */ public class Spell { static final int GB_SP_DIFF = 160; static final int[] secPosValueList = { 1601, 1637, ...
最近有汉字转拼音需求,发现公司使用的工具类比较老了,多音字自持不怎么号,就自己写了汉语转拼音工具类,主要是对Jpinyin进行了整合优化,支持多音字,简繁体互转,并支持自定义字典,词典,工具类可以直接使用
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转...
UNIHANS数组中,列举汉语拼音A到Z的拼音组成方式不同的字 根据输入的字符,二分查找UNIHANS列表中的对应同音字 输出UNIHANS中找到的对应字符的拼音 缺点与不足 如果在UNIHANS数组中,找不到对应的同音字则无法解析出...
INSERT INTO `districts` (`id`, `name`, `pinyin`, `initials`, `letter`, `citycode`, `adcode`, `parent`, `level`, `lng`, `lat`) VALUES (NULL, '中华人民共和国', 'zhonghuarenmingongheguo', 'ZHRMGHG', 'Z',...
java根据汉字生成拼音全拼或拼音首字母,所必须的jar包;net.sourceforge.pinyin4j.*;
在js中可能会更灵活的用到a-z上,或者用到拼音…或者用到…… 不过值得深思的一个问题是,如果为了实现对拼音之类的二分查找.而经过如下流程是否值得: 1。对拼音排序,貌似代码量不小吧。 2。然后再二分查找。这又...
所谓的汉字助记码就是一个汉字的拼音的首字母,如:张的汉字助记码为Z 源码实例中有四种获取方法分别是 1、表获取方法 2、存储过程获取 3、标量值获取 4、字符编码方法