将中文转化为拼音,这里使用了一个工具包,即pinyin4j-2.5.0.jar。

官网地址:http://pinyin4j.sourceforge.net/

1.中文转换成拼音的代码

PinyinUtils.java

public static String getPingYin(String inputString) {

HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();

format.setCaseType(HanyuPinyinCaseType.LOWERCASE);

format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);

format.setVCharType(HanyuPinyinVCharType.WITH_V);

char[] input = inputString.trim().toCharArray();

String output = "";

try {

for (char curchar : input) {

if (java.lang.Character.toString(curchar).matches("[\\u4E00-\\u9FA5]+")) {

String[] temp = PinyinHelper.toHanyuPinyinStringArray(curchar, format);

output += temp[0];

} else

output += java.lang.Character.toString(curchar);

}

} catch (BadHanyuPinyinOutputFormatCombination e) {

e.printStackTrace();

}

return output;

}

2.实现按照字母的顺序排序,使用的是JAVA自带的Comparator接口,

利用之前获取到的中文拼音,得到首字母并根据ascii值来实现排序。

private int sort(PersonBean lhs, PersonBean rhs) {

// 获取ascii值

int lhs_ascii = lhs.getFirstPinYin().toUpperCase().charAt(0);

int rhs_ascii = rhs.getFirstPinYin().toUpperCase().charAt(0);

// 判断若不是字母,则排在字母之后

if (lhs_ascii < 65 || lhs_ascii > 90)

return 1;

else if (rhs_ascii < 65 || rhs_ascii > 90)

return -1;

else

return lhs.getPinYin().compareTo(rhs.getPinYin());

}

原文链接:http://www.apkbus.com/blog-724725-60971.html

java 中文变拼音包,中文转化为拼音工具包相关推荐

  1. 汉字转化为拼音,支持多音字

    最近需要在车机上增加蓝牙电话薄功能,其中最重要的一个功能是需要通过人名的拼音或首字母来查询电话薄,比较好的一个实现方式是首先将电话薄中中文姓名转化为拼音和拼音对应首字母,然后跟用户输入的拼音字符串进行 ...

  2. 汉字转化成拼音的源代码

    1using System;   2using System.Collections;   3using System.Text;   4namespace JJBase.String   5{   ...

  3. java 中文转化为拼音

    依赖架包:pinyin4j.jar package net.jeeshop.core.util;import net.sourceforge.pinyin4j.PinyinHelper; import ...

  4. java 实现中文转化为拼音代码 汉字转化为拼音源码分享

    /*** 把汉字转化为拼音集合* @param src* @return Set<String>*/public static Set<String> getPinyin(St ...

  5. Java获取中文拼音、中文首字母缩写和中文首字母

    我们有时候会遇到这样的情况,需要获取某些中文的拼音.中文首字母缩写和中文首字母,下面我将为大家介绍一下如何获取中文拼音的缩写. 1.项目建立和配置 首先,我们建立一个java项目,新建libs文件夹并 ...

  6. 【框架】pinyin4j中文汉字转化为拼音

    在开发的时候,有时候需要通过输入某些关键字来获取某些相关的内容,比如:通信录中根据姓氏来查找对应的通信录信息.而这就涉及到了输入中文转化为字母的知识(拼音),这里介绍一种pinyin4j的框架的使用. ...

  7. [golang]-golang将中文转化为拼音

    导语:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化.想把姓名转化成拼音.因为有些账号即需要中文也需要英文. 官方demo 参考了github.com/mozillazg/go-p ...

  8. 华山论剑之iOS中文转化为拼音的正确姿势

    问题缘由:在程序开发当中,我们可能遇到需要将中文转化为拼音的情况,其实主要是做类似于通讯录功能的时候会出现这种情况,iOS在CoreFoundation中提供了CFStringTransform函数, ...

  9. Ubuntu安装中文语言包(包括五笔拼音等中文输入法)

    Ubuntu安装中文语言包 用Ubuntu 8.04Live cd安装好系统后,即使安装过程中选择中文,默认是没有安装中文语言包的.只要安装了中文语言包,中文输入法问题也解决了,因为语言包内置了拼音. ...

  10. 中文转化成拼音首写字母

    要实现这样一种效果,当我输入名称是中文时,代码名称会自动获取输入中文的首写字母: 实现思路是这样的:名称输入完毕候,当焦点移出时,代码名称自动获取.这其中引入汉字转拼音开源组件 NPinyin. 下面 ...

最新文章

  1. 软件质量保证与测试——Ad hoc Test
  2. python学习,day3:函数式编程,*arge,**kwargs
  3. Servlet使用适配器模式进行增删改查案例(IBaseDaoUtil.java)
  4. python可以代替plc吗_PLC可以代替安全控制器吗?电气工程师告诉你
  5. mysql查看表描述_MySQL表记录操作介绍(重点介绍查询操作)
  6. 华为云 mysql 主备_安全性能两手抓,华为云MySQL“非双一特性”助力企业业务稳定高效运行...
  7. CSS学习笔记----选择器与字体(字系)
  8. Redis应用学习——Redis事务与实现分布式锁
  9. mysql不识别生僻字_mysql生僻字插入失败解决方案
  10. Ruby新手入门之gem配置
  11. 用python分析股票收益影响因素的方法_Python3对股票的收益和风险进行分析
  12. 我最近在看什么 -《富爸爸穷爸爸》
  13. jdk8Comparator.comparing 排序
  14. android红外线开发实例,Android实例-红外线操作(XE10.2+小米5)
  15. pandas数据日期函数之date_range()、resample()与to_period()
  16. scada系统web服务器,基于Web的SCADA系统设计
  17. 怎样判断两个ip地址是不是在同一个网段中?
  18. aliyun cloud ide
  19. DPlayer视频播放器使用方法介绍
  20. 二代测序之SNV基础知识笔记总结

热门文章

  1. 基于特征点匹配的车辆跟踪
  2. 拼音模糊搜索 php,基于 XunSearch(迅搜)SDK 的全文搜索 Laravel 5.* 软件包,支持全拼、拼音简写、模糊搜索、热门搜索、搜索提示...
  3. 360极速浏览器代理设置无效问题
  4. Python五子棋游戏源代码源程序
  5. 移远BC95 NB-IoT模块串口发送数据到服务器
  6. 阿里巴巴代码规范插件
  7. echarts地图展示
  8. 华为主题包hwt下载_华为EMUI系统主题文件hwt修改及制作详细教程
  9. inode对接微软服务器,H3C iNode智能客户端安装指导(Windows)-7.3-5PW102
  10. 自己动手 MOBI 转 PDF