Java汉字转成汉语拼音工具类,需要用到pinyin4j.jar包.
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.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
public class HanyuPinyinHelper {
/**
* 将文字转为汉语拼音
* @param chineselanguage 要转成拼音的中文
*/
public String toHanyuPinyin(String ChineseLanguage){
char[] cl_chars = ChineseLanguage.trim().toCharArray();
String hanyupinyin = "";
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);// 输出拼音全部小写
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// 不带声调
defaultFormat.setVCharType(HanyuPinyinVCharType.WITH_V) ;
try {
for (int i=0; i<cl_chars.length; i++){
if (String.valueOf(cl_chars[i]).matches("[\u4e00-\u9fa5]+")){// 如果字符是中文,则将中文转为汉语拼音
hanyupinyin += PinyinHelper.toHanyuPinyinStringArray(cl_chars[i], defaultFormat)[0];
} else {// 如果字符不是中文,则不转换
hanyupinyin += cl_chars[i];
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
System.out.println("字符不能转成汉语拼音");
}
return hanyupinyin;
}
public static String getFirstLettersUp(String ChineseLanguage){
return getFirstLetters(ChineseLanguage ,HanyuPinyinCaseType.UPPERCASE);
}
public static String getFirstLettersLo(String ChineseLanguage){
return getFirstLetters(ChineseLanguage ,HanyuPinyinCaseType.LOWERCASE);
}
public static String getFirstLetters(String ChineseLanguage,HanyuPinyinCaseType caseType) {
char[] cl_chars = ChineseLanguage.trim().toCharArray();
String hanyupinyin = "";
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(caseType);// 输出拼音全部大写
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// 不带声调
try {
for (int i = 0; i < cl_chars.length; i++) {
String str = String.valueOf(cl_chars[i]);
if (str.matches("[\u4e00-\u9fa5]+")) {// 如果字符是中文,则将中文转为汉语拼音,并取第一个字母
hanyupinyin += PinyinHelper.toHanyuPinyinStringArray(cl_chars[i], defaultFormat)[0].substring(0, 1);
} else if (str.matches("[0-9]+")) {// 如果字符是数字,取数字
hanyupinyin += cl_chars[i];
} else if (str.matches("[a-zA-Z]+")) {// 如果字符是字母,取字母
hanyupinyin += cl_chars[i];
} else {// 否则不转换
hanyupinyin += cl_chars[i];//如果是标点符号的话,带着
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
System.out.println("字符不能转成汉语拼音");
}
return hanyupinyin;
}
public static String getPinyinString(String ChineseLanguage){
char[] cl_chars = ChineseLanguage.trim().toCharArray();
String hanyupinyin = "";
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);// 输出拼音全部大写
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// 不带声调
try {
for (int i = 0; i < cl_chars.length; i++) {
String str = String.valueOf(cl_chars[i]);
if (str.matches("[\u4e00-\u9fa5]+")) {// 如果字符是中文,则将中文转为汉语拼音,并取第一个字母
hanyupinyin += PinyinHelper.toHanyuPinyinStringArray(
cl_chars[i], defaultFormat)[0];
} else if (str.matches("[0-9]+")) {// 如果字符是数字,取数字
hanyupinyin += cl_chars[i];
} else if (str.matches("[a-zA-Z]+")) {// 如果字符是字母,取字母
hanyupinyin += cl_chars[i];
} else {// 否则不转换
}
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
System.out.println("字符不能转成汉语拼音");
}
return hanyupinyin;
}
/**
* 取第一个汉字的第一个字符
* @Title: getFirstLetter
* @Description: TODO
* @return String
* @throws
*/
public static String getFirstLetter(String ChineseLanguage){
char[] cl_chars = ChineseLanguage.trim().toCharArray();
String hanyupinyin = "";
HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);// 输出拼音全部大写
defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// 不带声调
try {
String str = String.valueOf(cl_chars[0]);
if (str.matches("[\u4e00-\u9fa5]+")) {// 如果字符是中文,则将中文转为汉语拼音,并取第一个字母
hanyupinyin = PinyinHelper.toHanyuPinyinStringArray(
cl_chars[0], defaultFormat)[0].substring(0, 1);;
} else if (str.matches("[0-9]+")) {// 如果字符是数字,取数字
hanyupinyin += cl_chars[0];
} else if (str.matches("[a-zA-Z]+")) {// 如果字符是字母,取字母
hanyupinyin += cl_chars[0];
} else {// 否则不转换
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
System.out.println("字符不能转成汉语拼音");
}
return hanyupinyin;
}
public static void main(String[] args) {
HanyuPinyinHelper hanyuPinyinHelper = new HanyuPinyinHelper() ;
System.out.println(hanyuPinyinHelper.toHanyuPinyin("多发的发独守空房阿道夫打发第三方"));
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# java汉字转成拼音工具类
# java汉字转成汉语拼音
# java汉字转成拼音
# java中将汉字转换成拼音的实现代码
# JAVA实现汉字转拼音功能代码实例
# Java汉字转拼音pinyin4j用法详解
# Java实现将汉字转化为汉语拼音的方法
# java实现汉字转拼音
# Java汉字转拼音工具类完整代码实例
# Java汉字转拼音案例详解
# Java汉字转换拼音(大小写)实例详解
# 第一个
# 转成
# 不带
# 则将
# 带着
# 第三方
# 多发
# 大家多多
# 独守
# 阿道夫
# toHanyuPinyin
# HanyuPinyinHelper
# public
# param
# chineselanguage
# String
相关文章:
如何通过FTP服务器快速搭建网站?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
如何通过可视化优化提升建站效果?
建站之星与建站宝盒如何选择最佳方案?
建站之星如何一键生成手机站?
网站制作员失业,怎样查看自己网站的注册者?
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
b2c电商网站制作流程,b2c水平综合的电商平台?
如何在腾讯云免费申请建站?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
,网页ppt怎么弄成自己的ppt?
C++中引用和指针有什么区别?(代码说明)
网站图片在线制作软件,怎么在图片上做链接?
网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?
香港服务器租用每月最低只需15元?
安云自助建站系统如何快速提升SEO排名?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
建站主机选择指南:服务器配置与SEO优化实战技巧
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?
北京制作网站的公司,北京铁路集团官方网站?
宁波自助建站系统如何快速打造专业企业网站?
建站之星如何优化SEO以实现高效排名?
如何快速重置建站主机并恢复默认配置?
广德云建站网站建设方案与建站流程优化指南
湖北网站制作公司有哪些,湖北清能集团官网?
平台云上自助建站如何快速打造专业网站?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
建站主机服务器选购指南:轻量应用与VPS配置解析
如何通过多用户协作模板快速搭建高效企业网站?
建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析
移民网站制作流程,怎么看加拿大移民官网?
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
寿县云建站:智能SEO优化与多行业模板快速上线指南
如何用免费手机建站系统零基础打造专业网站?
如何设计高效校园网站?
如何在建站宝盒中设置产品搜索功能?
如何高效生成建站之星成品网站源码?
Swift开发中switch语句值绑定模式
在线教育网站制作平台,山西立德教育官网?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
如何在万网主机上快速搭建网站?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
制作充值网站的软件,做人力招聘为什么要自己交端口钱?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
*请认真填写需求信息,我们会在24小时内与您取得联系。