这几天在做项目的时候用到了通过拼音去数据库表里面去模糊查询汉语字段,刚开始的时候感觉特别神奇,查了好多资料,直接去模糊查询是能实现的,但是貌似很复杂。所以最终取了一个比较容易的方案,就是给数据库表里面新加了一个拼音字段。完美的解决了这个问题,虽说可以这么干,但是数据这么多,全部转换为拼音(人一个一个区输入,有点不现实)。于是就在网上找呀找,就找到了一段直接将汉语转换为拼音的一段代码,在这和大家分享一下。
所需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实现将汉语转换为拼音功能,希望对大家有所帮助!
敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载像素火影骨架佐助 (Perseverance Fire Shadow)手机版v1.16
下载要塞英雄 安卓版v33.20.0-39082670-Android
下载梦想城镇vivo最新版本 安卓版v12.0.1
梦想城镇vivo版是这款卡通风模拟经营类手游的渠道服版本,玩
怦然心动的瞬间 安卓版v1.0
怦然心动的瞬间是一款真人向的恋爱互动游戏,在游戏中玩家将扮演
曼尼汉堡店游戏 安卓版v1.0.3
曼尼汉堡店是一款非常好玩的精品恐怖类型冒险游戏,在这款游戏中
现代总统模拟器去广告版 安卓版v1.0.46
现代总统模拟器是一款休闲养成类游戏,可能对于不少的玩家来说都
现代总统模拟器付费完整版 安卓版v1.0.46
现代总统模拟器高级版在商店是需要付费的,相对于普通版本,高级