java将汉字转成拼音首字母大写字母_java实现将汉字转为首字母、拼音
本文转自java实现将汉字转为拼音
作者itRed
本人仅稍作整理,并提出一些问题。问题的话暂时没时间处理,等以后有时间了再更新。
测试参数
String info="汉字转换为拼音";
结果
HZZHWPY --- 全部大写需要.toUpperCase()
hanzizhuanhuanweipinyin
步骤
1、Maven中引入依赖
com.belerweb
pinyin4j
2.5.1
2、定义方法
/**
* 获取字符串拼音的第一个字母
* @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;
}
3、调用方法
public static void main(String[] args) {
System.out.println(ToFirstChar("汉字转换为拼音").toUpperCase()); //转为首字母大写
System.out.println(ToPinyin("汉字转换为拼音"));
}
问题
今天(2017-9-21 19:38:29)工作上有这个需求,直接把原文的代码拿过来用了。
但是有个问题,如果字符串中有符号,那么就会报错。
因为我的数据中符号比较简单,都是 () ()括号之类的,所以我直接加了个简单的判断,使用replace把括号拿掉了,不过还是要考虑一下出现大量符号的情况。
先记录下,以后有时间了再来处理这个。
java将汉字转成拼音首字母大写字母_java实现将汉字转为首字母、拼音相关推荐
- 【python入门小知识】实现人名全大写,全小写,首字母大写
python,实现人名全大写,全小写,首字母大写 user1="zhang san,\n" user2="li si,\n" user3="Wang ...
- Python英文单词大小写转换及所有首字母大写
s = 'HELLO world'print(s.lower()) #全部小写>>> hello worldprint(s.upper()) #全部大写>>> HE ...
- css 首字母,css如何设置英文首字母大写
我们经常在英文报纸上看到首个单词大写,那么单词首字母大写如何设置,可能很多人遇到这种问题都不知道怎么操作,下面我们来讲解一下css如何设置英文首字母大写? 实现英文首字母大写可以使用div+css,d ...
- SpringBoot返回首字母大写的参数对象
在工作中,写业务信息交换接口时,偶尔会遇到需求方要求传入和返回首字母大写的参数,不符合变量首字符小写的变量命名规范,在返回时会遇到spring自动将首字母大写的参数转换为首字母小写. 返回参数解决方法 ...
- Springboot Controller实体属性大写、第二个字母大写无法获取数据
1.首字母大写 建议先看这篇文章 Springboot Controller参数映射之属性首字母小写第二字母大写无法映射问题分析_controller 参数首字母大写_万物皆字节的博客-CSDN博客 ...
- java将汉字转成拼音首字母大写字母_Java 将汉字转换为拼音并取首字母大写
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 首先需要引入pinyin4j-2.5.0.jar 在定义一个servlet.Java的类,写一个Converting方法 实例代码详解如下: public ...
- java将汉字转成拼音首字母大写字母_java 根据汉字生成拼音全拼或拼音首字母的示例...
1.情景展示 java 根据中文生成对应的拼音 2.准备工作 所需jar包:pinyin4j-2.5.0.jar 3.解决方案 导包 import net.sourceforge.pinyin4j.P ...
- java中文名转成大写字母_Java 将汉字转换为拼音并取首字母大写
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 首先需要引入pinyin4j-2.5.0.jar 在定义一个servlet.Java的类,写一个Converting方法 实例代码详解如下: public ...
- 如何把汉字转成五笔与拼音(首字母或全部字母)
备注:其中的PY,WB为码表:dll找不到上传得地方 using System; using System.IO; using System.Collections; namespace ChsHel ...
最新文章
- Python使用matplotlib可视化时间序列季节图、使用季节图可以比较不同年份相同月份的数据差异、或者相同(年/月/周等)的时间序列在同一天的数据差异(Seasonal Plot)
- R语言进行dataframe数据左连接(Left join):使用R原生方法、data.table、dplyr等方案
- 深度学习的数学(2)恶魔神经
- bootstrapt 表格自适应_一起聊B端设计 - 如何设计表格?
- 录音权限 推送_友邻正式推出Linux版本录音系统
- 【C++】C++类和对象
- js实现敏感词过滤算法
- java 实现电子签名_java swing实现手写板电子签名系统
- Google浏览器安装Axure插件
- 数据管理:业务数据清洗,落地实现方案
- RFID射频识别系统简述
- 关于经纬度坐标转换的方法
- Kubernetes版本对接对象存储几种方案
- Java使用正则表达式从字符串中提取 IP 地址
- 商城产品属性数据库设计
- Scala语言学习:Scala是什么?
- 我们上语文英语音乐计算机和美术英语,语文、英语、数学、是什么意思
- java服务器端集成微信小程序
- ubuntu14.04 下载安装 yocto平台
- 从零学本体dApp开发(18):分片智能合约也有存储 dAPI