java 获取汉字拼音_java springboot中获取汉字拼音
第一步:pom.xml文件中引入pinyin4j依赖
com.belerweb
pinyin4j
2.5.0
第二步:新增PinYinUtil工具类
/*
* Copyright (C) 2018 Baidu, Inc. All Rights Reserved.
*/
package test;
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;
/**
* 汉字转换为拼音
* @author Red
*/
public class PinYinUtil {
/**
* 测试main方法
* @param args
*/
public static void main(String[] args) {
System.out.println(toFirstChar("汉字转换为拼音").toUpperCase()); //转为首字母大写
System.out.println(toPinyin("汉字转换为拼音"));
}
/**
* 获取字符串拼音的第一个字母
* @param chinese
* @return
*/
public static String toFirstChar(String chinese){
String pinyinStr = "";
char[] newChar = chinese.toCharArray(); //转为单个字符
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i < newChar.length; i++) {
if (newChar[i] > 128) {
try {
pinyinStr += PinyinHelper.toHanyuPinyinStringArray(newChar[i], defaultFormat)[0].charAt(0);
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
}else{
pinyinStr += newChar[i];
}
}
return pinyinStr;
}
/**
* 汉字转为拼音
* @param chinese
* @return
*/
public static String toPinyin(String chinese){
String pinyinStr = "";
char[] newChar = chinese.toCharArray();
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
for (int i = 0; i < newChar.length; i++) {
if (newChar[i] > 128) {
try {
pinyinStr += PinyinHelper.toHanyuPinyinStringArray(newChar[i], defaultFormat)[0];
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
}else{
pinyinStr += newChar[i];
}
}
return pinyinStr;
}
}
第三步:调用PinYinUtil工具类静态方法实现汉字向拼音的转换
PinYinUtil.toPinyin(vo.getName())
延伸阅读:
https://github.com/belerweb/pinyin4j 在github开源项目中可以找到maven中可以引入的最新版本的配置,如下:
java 获取汉字拼音_java springboot中获取汉字拼音相关推荐
- java过滤lsit重复_java 8 中获取List结合中过滤后的重复数据
//excel文件上传数据 List list = importResult.getList(); if (list.size() >200) { String error = Constant ...
- 【学习笔记】springBoot中获取sping管理的bean
文章目录 一.使用场景 二.springBoot中获取sping管理的bean 2.1 生成工具类SpringContextUtil 2.2 使用工具类SpringContextUtil 2.3 注意 ...
- java 普通类request_[Java教程]spring在普通类中获取session和request
[Java教程]spring在普通类中获取session和request 0 2014-08-12 08:01:13 在使用spring时,经常需要在普通类中获取session,request等对像. ...
- java 从一个容器获取对象,Java 如何实现从spring容器中获取注入的bean对象
Java 如何实现从spring容器中获取注入的bean对象 发布时间:2020-11-03 15:27:37 来源:亿速云 阅读:70 作者:Leah 这期内容当中小编将会给大家带来有关Java 如 ...
- java 汉字个数_java语言中如何获取字符串中汉字的个数
java语言中如何获取字符串中汉字的个数? [实例描述] 字符串中可以包含数字,字母.汉字或者其他字符.使用Character 类的isDigit()方法可以判断字符中的某个字符是否为数字,使用Cha ...
- java正则表达式所有字符串_java正则表达式如何获取字符串中所有匹配内容
java正则表达式如何获取字符串中所有匹配内容以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! java正则表达式如何获取 ...
- php获取汉字的长度,php中处理汉字字符串长度:strlen和mb_strlen
PHP内置的字符串长度函数strlen()无法正确处理中文字符串,它得到的只是字符串所占的字节数.对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是3倍 ...
- springboot中获取bean_最新Spring Boot干货总结(超详细,建议收藏)
前言:本文非常长,建议先mark后看,也许是最后一次写这么长的文章说明:前面有4个小节关于Spring的基础知识 分别是:IOC容器.JavaConfig.事件监听.SpringFactoriesLo ...
- Java Hashmap:如何从价值中获取关键?
如果我的值是"foo" ,并且ftw.containsValue("foo")返回true的HashMap<String> ftw ,如何获得相应的 ...
- java 获取webcontent目录_java web项目获取src和WebContent目录下的配置文件
1.首先上目录结构: 2.部署到tomcat,在servlet中测试,测试代码: package test; import java.io.IOException; import java.io.In ...
最新文章
- java十五章_java:第十五章
- 潘建伟团队进行人类首次洲际量子通信 都发送了什么
- Eclipse中spring boot的安装和创建简单的Web应用
- google浏览器javascript没反应_浏览器之导航这件小事
- servlet的线程安全性问题
- SAP UI5 应用开发教程之二十 - SAP UI5 的表达式绑定用法讲解
- 【python学习】——读取csv文件
- matlab for循环不覆盖,将输出保存到文本文件而不覆盖和打印矩阵中的N个条目[matlab]...
- SQL Server判断对象是否存在 (if exists (select * from sysobjects )
- qt 怎么设计个性化的滑块_滑块上走滑块模具结构设计,不一样的结构思维成就你的高薪职业...
- 列车运行图的编制原则是什么_我国农村将有序推进村庄规划编制
- 对无序的边界点排序(顺时针绘制边界)
- pycharm 2018永久破解激活补丁 附安装教程
- 2021-07-17 随笔
- 国内外神经网络研究现状,神经网络的发展现状
- 今日学习在线编程题:小码哥的序列
- uniapp vue百度人脸实名认证(V4)接口
- C# web references 调用出错 The underlying connection was closed: An unexpected error occurred on a send.
- k8s介绍及与docker搭建集群
- 开放网络–服务提供商的未来
热门文章
- postman文件导入
- 百度网盘免费jdk1.8中文chm下载(不要积分点个赞就好)
- 利用python做中文词频分析
- ASO秘籍:教你如何学会积分墙优化套路
- 电脑Tab键有什么用
- chronodex怎么用_滴答清单使用全攻略:如何把手帐搬到滴答清单上,提升效率?...
- php微信公众号发送邮件,GitHub - DongDavid/notify: 消息发送组件-邮件、微信公众号、企业微信、小程序...
- Nature子刊 | 绘制植物叶际菌群互作图谱以建立基因型表型关系
- JavaScript用浏览器书签制作插件(爬虫)
- uk码对照表_36码(uk码和中国码对照表)