这几天在做项目的时候用到了通过拼音去数据库表里面去模糊查询汉语字段,刚开始的时候感觉特别神奇,查了好多资料,直接去模糊查询是能实现的,但是貌似很复杂。所以最终取了一个比较容易的方案,就是给数据库表里面新加了一个拼音字段。完美的解决了这个问题,虽说可以这么干,但是数据这么多,全部转换为拼音(人一个一个区输入,有点不现实)。于是就在网上找呀找,就找到了一段直接将汉语转换为拼音的一段代码,在这和大家分享一下。
所需jar:pinyin4j-2.5.0.jar
代码如下 | 复制代码 |
publicstaticvoidmain(String[] args) { System.out.println(getPingYin("小龙驿站")); } publicstaticString getPingYin(String str) { char[] t1 =null; t1 = str.toCharArray(); String[] t2 =newString[t1.length]; HanyuPinyinOutputFormat t3 =newHanyuPinyinOutputFormat(); t3.setCaseType(HanyuPinyinCaseType.LOWERCASE); t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE); t3.setVCharType(HanyuPinyinVCharType.WITH_V); String t4 =""; intt0 = t1.length; try{ for(inti =0; i < t0; i++) { // 判断能否为汉字? if(Character.toString(t1[i]).matches("[\u4E00-\u9FA5]+")) { t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);// 将汉字的几种全拼都存到t2数组? t4 += t2[0];// 取出该汉字全拼的第一种读音并连接到字符串t4? }else{ // 如果不是汉字字符,间接取出字符并连接到字符串t4? t4 += Character.toString(t1[i]); } } }catch(BadHanyuPinyinOutputFormatCombination e) { e.printStackTrace(); } returnt4; |
以上所述是小编给大家介绍的java实现将汉语转换为拼音功能,希望对大家有所帮助!
创造与魔法 安卓版v1.0.0750
创造与魔法是一款开放世界手游,在游戏中玩家可探索这个奇妙的世
创造与魔法修改版 最新版v1.0.0750
创造与魔法无限点券版是款探索冒险游戏,该款游戏的操作还是蛮自
战争与文明官方版本 安卓版v1.7.16
战争与文明是一款由上海邮通科技有限公司开发的战争策略游戏,这
迷你世界0元领皮肤无限迷你币版 最新安卓版v1.43.0
迷你世界0元购买皮肤版是这款开放沙盒冒险建造游戏的特殊破解版
创造与魔法无限经验版 安卓版v1.0.0750
创造与魔法无限经验版是款可以改造环境,整个游戏的自由度还是蛮