JAVA实现汉字转拼英
JAVA实现汉字转拼英
- 1.准备工具
- 2.工具导入Eclipse项目
- 3.工具类 ChineseToEnglish 的代码
- 4.测试
- 5.运行结果
1.准备工具
pinyin4j-2.5.0.jar 包
获取链接:https://download.csdn.net/download/gzu_zb/12541368
2.工具导入Eclipse项目
选择添加
找到 jar 包的路径,打开即可
成功添加
3.工具类 ChineseToEnglish 的代码
/** 工具类:ChineseToEnglish,需要导入 pinyin4j-2.5.0.jar 包* 调用方式:ChineseToEnglish.getFullSpell(姓名);*/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;public class ChineseToEnglish {/** * 获取汉字串拼音首字母,英文字符不变 * @param chinese 汉字串 * @return 汉语拼音首字母 */ public static String getFirstSpell(String chinese) { StringBuffer pybf = new StringBuffer(); char[] arr = chinese.toCharArray(); HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat(); defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); for (int i = 0; i < arr.length; i++) { if (arr[i] > 128) { try { String[] temp = PinyinHelper.toHanyuPinyinStringArray(arr[i], defaultFormat); if (temp != null) { pybf.append(temp[0].charAt(0)); } } catch (BadHanyuPinyinOutputFormatCombination e) { e.printStackTrace(); } } else { pybf.append(arr[i]); } } return pybf.toString().replaceAll("\\W", "").trim(); } /** * 获取汉字串拼音,英文字符不变 * @param chinese 汉字串 * @return 汉语拼音 */ public static String getFullSpell(String chinese) { StringBuffer pybf = new StringBuffer(); char[] arr = chinese.toCharArray(); HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat(); defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); for (int i = 0; i < arr.length; i++) { if (arr[i] > 128) { try { pybf.append(PinyinHelper.toHanyuPinyinStringArray(arr[i], defaultFormat)[0]); } catch (BadHanyuPinyinOutputFormatCombination e) { e.printStackTrace(); } } else { pybf.append(arr[i]); } } return pybf.toString(); }
}
4.测试
import java.util.Scanner; public class Main {public static void main(String[] args) {Scanner read = new Scanner(System.in); while(true) {String str=read.nextLine();System.out.print("姓名全拼:");System.out.println(ChineseToEnglish.getFullSpell(str));System.out.print("姓名首字母:");System.out.println(ChineseToEnglish.getFirstSpell(str));}}
}
5.运行结果
JAVA实现汉字转拼英相关推荐
- Java获取汉字全拼和首拼
1 pinyin4j是一个开源项目,使用它可以很容易的获取汉字的拼音,这也是我们经常需要用到的功能:下面是一个应用,获取汉字首字母或者全拼的方法 package com.yjck.piny ...
- java全拼,Java获取汉字全拼和首拼
import java.util.Collections; import java.util.Iterator; import java.util.LinkedHashMap; import java ...
- Java将汉字转换为全拼
Java将汉字转换为全拼 pom依赖 <dependency><groupId>com.belerweb</groupId><artifactId>pi ...
- java实现汉字文字转换拼音(全拼和简拼)工具包
java实现汉字文字转换拼音(全拼和简拼)工具包 话不多说,直接上代码,调用即可 /** * 得到 全拼 * @param str * @return */public static String g ...
- java将汉字转成拼音首字母大写字母_java 根据汉字生成拼音全拼或拼音首字母的示例...
1.情景展示 java 根据中文生成对应的拼音 2.准备工作 所需jar包:pinyin4j-2.5.0.jar 3.解决方案 导包 import net.sourceforge.pinyin4j.P ...
- java 实现汉字转换拼音_JAVA实现汉字转拼音功能代码实例
JAVA中汉字转拼音的方法并不复杂,可以使用pinyin4j包来实现. 一.下载pinyin4j的架包,并导入项目中,如下: 如果是maven项目,maven依赖如下: com.belerweb pi ...
- java实现汉字转为拼音
java实现汉字转为拼音: 1.需要导入pinyin4j.jar package com.loo.pinyin; import net.sourceforge.pinyin4j.PinyinHelpe ...
- js 获取汉字首拼和全拼和拼音
今天需要用到js获取汉字拼音,提供一个js 下载地址为 http://www.yzzmf.com/images/jquery_plugs/ChinesePY.js 源码如下 var Pinyin ...
- java 实现汉字转换拼音_Java实现汉字转换为拼音
# re: Java实现汉字转换为拼音 2006-11-24 15:06 芦苇 JAVA将汉字转化成拼音的方法 /** *//** ################################## ...
- Java中将汉字转换为拼音
近来有个需求是从前台输入的文本框的汉字串,到后台要将其处理成首字母的串,存放到数据库中.网上查找了方法,这里记录下来,方便查看.Java中有汉字转换为全拼的包,这里引用的是 net.sour ...
最新文章
- R语言计算曼哈顿距离(Manhattan Distance)实战:计算两个向量的曼哈顿距离、dist函数计算矩阵中两两元素的曼哈顿距离
- Css实现checkbox及radio样式自定义
- MyBatis的foreach语句详解
- LeetCode OJ -Happy Number
- egg --- 初始化一个egg项目基本结构说明
- 软考中级软件设计师考试大纲
- 利用ENVI绘制土地利用图
- rog live service是什么_「评测」三模无线,微动随心换,华硕ROG 烈刃2满足所有游戏需求...
- linux mbr转gpt分区,免重装!迄今为止最详细的MBR转GPT分区攻略
- zzuli OJ 2331:小新同学的智商
- 如何系统学习Android开发?一线互联网内部整理的Android学习路线图是时候拿出来了
- FAST-LIO2.0代码解析(二)preprocess.cpp
- 敏捷开发“松结对编程”系列之十一:L型代码结构(团队篇之一)
- RK3568平台开发系列讲解(安卓篇)WakeLock分析
- php报错:PHP Startup Unable to load dynamic library
- Xilinx FPGA bit文件和MCS下载流程
- F 魏迟燕的自走棋(思维+贪心+并查集维护联通块/左部点配对边<=2的匈牙利)
- 001.宋浩老师《线性代数》笔记(第一章行列式)
- workerman 7272端口被占用
- 创建型模式——原型模型(Prototype Pattern)
热门文章
- MySQL–ROW_NUMBER
- GPIO设备虚拟文件结点的创建【转】
- 一个牧场目前一共有20头刚出生的羊,母羊、公羊各一半。假如母羊5岁时后每年生一胎(母羊,公羊各一半)。羊活到10岁后死亡。请问20年后这个牧场有多少只羊? 请用C#写出算法。
- 英雄无敌6服务器在哪个文件夹,魔法门英雄无敌6:生物-墓园资料
- java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to com.mpg.ehr.humanaffairs.salaryb
- Thinkpad部分软件相关服务进程的总结
- 创建、清除interval定时器/interval定时器无法清除/判断定时器是否存在
- 带隙基准电压-Bandgap详细介绍
- grep正则表达式后面的单引号和双引号的区别?
- 家谱制作软件如何下载及安装