android中汉字转为拼音
汉语转为拼音
首先要先导入架包:com.belerweb:pinyin4j:2.5.1
工具类:
注释的方法,是可以将单个汉字转为拼音的,为注释的可以转化词语,
public class HanZiToPinYin { // public static String toPinYin(char hanzi){ // HanyuPinyinOutputFormat hanyuPinyin = new HanyuPinyinOutputFormat(); // hanyuPinyin.setCaseType(HanyuPinyinCaseType.LOWERCASE); // hanyuPinyin.setToneType(HanyuPinyinToneType.WITH_TONE_MARK); // hanyuPinyin.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE); // String[] pinyinArray=null; // try { // //是否在汉字范围内 // if(hanzi>=0x4e00 && hanzi<=0x9fa5){ // pinyinArray = PinyinHelper.toHanyuPinyinStringArray(hanzi, hanyuPinyin); // } // } catch (BadHanyuPinyinOutputFormatCombination e) { // e.printStackTrace(); // } // //将获取到的拼音返回 // return pinyinArray[0]; // } public static String getPinYinAllChar(String zn_str, int caseType) { char[] strChar = zn_str.toCharArray(); HanyuPinyinOutputFormat hanYuPinOutputFormat = new HanyuPinyinOutputFormat(); // 输出设置,大小写,音标方式等 if (1 == caseType) { hanYuPinOutputFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE); } else { hanYuPinOutputFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE); } hanYuPinOutputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE); hanYuPinOutputFormat.setVCharType(HanyuPinyinVCharType.WITH_V); StringBuffer pyStringBuffer = new StringBuffer(); String[] strString = new String[strChar.length]; try { for (int i = 0; i < strChar.length; i++) { if (Character.toString(strChar[i]).matches("[\\u4E00-\\u9FA5]+")) {//如果是汉字字符
//将汉字的几种全拼都存到strString数组中
strString = PinyinHelper.toHanyuPinyinStringArray(strChar[i], hanYuPinOutputFormat); pyStringBuffer.append(strString[0]);//取出该汉字全拼的第一种读音并连接到字符串pyStringBuffer后 } else {//如果不是汉字字符,直接取出字符并连接到字符串pyStringBuffer后 pyStringBuffer.append(Character.toString(strChar[i])); } } } catch (BadHanyuPinyinOutputFormatCombination e) { e.printStackTrace(); } return pyStringBuffer.toString(); }
MainActivity中
注释的代码是调用单个汉字转拼音的方法,为注释的是调用词语转拼音的方法
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView showText= (TextView) findViewById(R.id.showText); // String hanziString="人"; // String pinyinString= HanZiToPinYin.toPinYin(hanziString.charAt(1)); // showText.setText("汉字:"+hanziString+"\n"+"拼音:"+pinyinString); String s = HanZiToPinYin.getPinYinAllChar("大家好", 1); showText.setText(s); } }
运行结果:
词语转拼音:
单个字转拼音:
android中汉字转为拼音相关推荐
- Java/Android中汉字转拼音的两种方法,优劣比较
一.前言 在我们的开发中,有时会有这样的需求,就是联系人列表按照拼音顺序排列(如通讯录).于是,我也在网上搜到了许多这类的文章,就两种最常见的做法在此进行简单的比较和分析 二.汉字转拼音的方法 使用第 ...
- Android中汉字转拼音的优化
Android中一种高效省资源的汉字转拼音的实现 我在开发Android项目中经常会遇到汉字转拼音的需求,主要是一些按拼音排序,首字母本地搜索匹配的需求,这些需求的特点是这样的:不要求处理声调和多音字 ...
- Android中汉字转拼音的两种方法,优劣比较
一.前言 在我们的开发中,有时会有这样的需求,就是联系人列表按照拼音顺序排列(如通讯录).于是,我也在网上搜到了许多这类的文章,就两种最常见的做法在此进行简单的比较和分析 二.汉字转拼音的方法 使用第 ...
- android 将文字转换为拼音格式,android中将汉字转为拼音
汉字转拼音,汉字转拼音首字母~ 下面的方法是在做项目的时候,从网上查了好久才得到的~虽然不是自己写的,但是也改的差不多了~放在这里供大家参考哈 http://download.csdn.net/det ...
- Android/Java汉字转拼音类及按A-Z排序方法
在Android / java 开发中有时需要对数据进行根据拼音[A-Z]的规则进行排序所以需要先将汉字转为拼音然后再进行排序 //汉字转拼音类 package xyz.sort; import ja ...
- 【实例】PHP如何实现汉字转为拼音的?
php汉字转拼音本次使用的是 overtrue/pinyin 扩展.基于 CC-CEDICT 词典的中文转拼音工具,更准确的支持多音字的汉字转拼音解决方案. 一.安装 1.使用 Composer 安装 ...
- Java汉字转为拼音工具类
依赖文件 <!-- https://mvnrepository.com/artifact/com.belerweb/pinyin4j --><dependency><gr ...
- java实现将汉字转为拼音
原文:java实现将汉字转为拼音 有时候为了方便操作程序的开发,需要将汉字转为拼音等操作.下面这个是自己结合网上的资料,加上自己在公司项目中的亲自实践.完整的实现了将汉字转为拼音的操作.这个Demo只 ...
- python第三方库:pypinyin将汉字转为拼音
汉字的拼音虽然有一定的规律,但是做一套好的汉字转拼音的系统并不是那么容易,需要考虑的问题也比较多.汉字转拼音在多个的方向上也经常使用到.比如在url中,很少使用中文作为url连接,一种方式是转换为拼音 ...
最新文章
- etcd 笔记(06)— Client 结构定义、客户端(初始化、KV存储Get、Put、事务 Txn、压缩 Compact、Watch、Lease
- MySQL Order by 语句用法与优化详解
- python安装过程中关机_1234567,Python帮女神自动来关机
- 10g 中RETENTION GUARANTEE 的作用
- 微型项目实践(8):数据访问的实现
- 住酒店套房的注意事项
- node.js实现formdata上传文件
- 2021春季每日一题【week3 未完结】
- React项目开发中的数据管理
- vs(visual studio)调试功能里各个按钮的意义及使用方法?
- [转载]如何编写无法维护的代码(3)
- 20145202马超 2016-2017-2 《Java程序设计》第一次实验
- gsp计算机管理系的功能,药博士医药企业GSP管理系统功能介绍
- input 输入值的监听 禁止输入特殊字符
- java闰年满五换行_CoreJava练习题
- JavaScript-在当前显示区范围内实现点不到的小方块
- 项目Alpha冲刺Day3
- 内蒙古电大计算机考试成绩查询成绩查询,中考查分系统
- android qq三方登录授权失败,qq第三方登陆授权失败110401错误码解决办法介绍
- Intel SGX开发者参考书(三)—— 使用Intel SGX SDK工具(一)