java 拼音转汉字_Java通过pinyin4j实现汉字转拼音
package com.zxy.timecard.utils;
import net.sourceforge.pinyin4j.PinyinHelper;
/**
* 拼音工具类
* @author ZENG.XIAO.YAN
* @date 2018年5月9日
*
*/
public class PinYinUtils {
/**
* 获取汉字首字母的方法。如: 张三 --> ZS
* 说明:暂时解决不了多音字的问题,只能使用取多音字的第一个音的方案
* @param hanzi 汉子字符串
* @return 大写汉子首字母; 如果都转换失败,那么返回null
*/
public static String getHanziInitials(String hanzi) {
String result = null;
if(null != hanzi && !"".equals(hanzi)) {
char[] charArray = hanzi.toCharArray();
StringBuffer sb = new StringBuffer();
for (char ch : charArray) {
// 逐个汉字进行转换, 每个汉字返回值为一个String数组(因为有多音字)
String[] stringArray = PinyinHelper.toHanyuPinyinStringArray(ch);
if(null != stringArray) {
sb.append(stringArray[0].charAt(0));
}
}
if(sb.length() > 0) {
result = sb.toString().toUpperCase();
}
}
return result;
}
/**
* 获取汉字拼音的方法。如: 张三 --> zhangsan
* 说明:暂时解决不了多音字的问题,只能使用取多音字的第一个音的方案
* @param hanzi 汉子字符串
* @return 汉字拼音; 如果都转换失败,那么返回null
*/
public static String getHanziPinYin(String hanzi) {
String result = null;
if(null != hanzi && !"".equals(hanzi)) {
char[] charArray = hanzi.toCharArray();
StringBuffer sb = new StringBuffer();
for (char ch : charArray) {
// 逐个汉字进行转换, 每个汉字返回值为一个String数组(因为有多音字)
String[] stringArray = PinyinHelper.toHanyuPinyinStringArray(ch);
if(null != stringArray) {
// 把第几声这个数字给去掉
sb.append(stringArray[0].replaceAll("\\d", ""));
}
}
if(sb.length() > 0) {
result = sb.toString();
}
}
return result;
}
public static void main(String[] args) {
System.out.println(PinYinUtils.getHanziInitials("袁素芳"));
System.out.println(PinYinUtils.getHanziPinYin("袁素芳"));
}
}
java 拼音转汉字_Java通过pinyin4j实现汉字转拼音相关推荐
- JAVA正则表达式怎么表达汉字_Java的正则表达式匹配汉字
[Java 提供了功能强大的正则表达式API,在java.util.regex 包下.本教程介绍如何使用正则表达式API.] 刚才有同事问,顺便发出来记一下. 以前读<精通正则表达式>的时 ...
- java 随机生成常用汉字_Java随机生成中文汉字
/** * 原理是从汉字区位码找到汉字.在汉字区位码中分高位与底位, 且其中简体又有繁体. * 位数越前生成的汉字繁体的机率越大. * 所以在本例中高位从171取,底位从161取, 去掉大部分的繁体和 ...
- java数字转为大写_java 数字转大写汉字
packagecom.javens.test;importjava.util.HashMap;importjava.util.Map;/** * *@authorjavens *偶尔网上看到这个题目, ...
- java 中文分词转拼音_java 支持分词的高性能拼音转换工具, 速度是 pinyin4j 的两倍...
java 支持分词的高性能拼音转换工具, 速度是 pinyin4j 的两倍 pinyin https://github.com/houbb/pinyin 是 java 实现的高性能中文拼音转换工具. ...
- java汉字的拼音首字母_Java 获取汉字的拼音首字母
Java 获取汉字的拼音首字母: pom.xml 引用 pinyin4j 包: com.belerweb pinyin4j 2.5.0 PinyinUtil 类: package com.xxx.co ...
- java取拼音首字母_java怎么根据汉字获取字的拼音首字母
展开全部 这里可以使用62616964757a686964616fe58685e5aeb931333363393633 pinyin4. jar包来进行转化,pinyin4. jar可以自行在网上进行 ...
- java 拼音模糊查询_java实现首字母模糊查询的功能
①,要实现首字母模糊匹配,首先我们需要得到你要搜索内容的首字母,对于java来说,有一个非常实用的包:pinyin4j.jar. 这个拼音包中的PinyinHelper 方法可以得到String的首字 ...
- 利用 pinyin4j 把汉字转化为拼音
1. 简单介绍 有时候,需要将汉字编程对应的拼音,以方便数据的处理.比如在Android手机应用的开发上,要查询联系人的姓名,通常都是用拼音进行查询的.比如要查询"曹孟德" ...
- JAVA pinyin4j 中文多音字转拼音转字母大写
JAVA pinyin4j 中文多音字转拼音转字母大写; class PinyinTool { /*** 解析并组合拼音,对象合并方案** @return*/ private static Strin ...
最新文章
- ATS 4.2.3自定义日志文件格式的方法
- C# 指定字符串截取方法
- IE8中HTTP连接数目的变化
- 使用docker-compose配置redis服务
- SAP Spartacus pagefold学习笔记
- matlab的fftn,matlab fftn
- mfc formview中的关闭视图函数_VC|API消息处理(回调函数+分支语句)与MFC中的消息映射函数...
- sqlplus 主键 设置_浅谈MyBatis-Plus学习之Oracle的主键Sequence设置
- Javascript特效:照片墙
- mac移动硬盘未装载解决方案
- 六 Python 字典与集合
- 计算机网络与云技术计算,计算机网络云计算技术(原稿)
- 计算机对操作系统函数的调用失败,解决win7提示“远程过程调用失败且未执行”的方案...
- Android反编译工具与反编译步骤及常见问题
- HEVC解码器HM源码阅读(三)读取一个NALU
- 类的成员函数作为函数指针
- win10快速关机_如何让win10开机默认开启小键盘?
- 和自己赛跑的人 —不要怕、不后悔!
- groovy if 判断字符串_Groovy快速入门看这篇就够了
- ABP 详解系列9:基于ABP框架实现RBAC(角色访问控制)