当前位置:编程学习 > JAVA >>

pinyin

最近在做一个搜索功能,遇到一个问题:“当输入的是拼音时如何像google百度那样,能自动的转为对应的汉字呢?”
虽然在google中已经实现了,但是我却不知道他的接口是什么,哪位兄弟能帮忙告知一下,谢谢了 pinyin --------------------编程问答-------------------- 个人见解,是利用ajax外加一个强大的字母汉字匹配库来实现的。 --------------------编程问答--------------------
/**
 * 获得字符串中汉字的首拼音,如果不是汉字就原样返回
 * @param src 
 * @return String
 * */
public String getFirstPinyin(String src) {
if (null == src) {
return "";
}
char[] t1 = null;
t1 = src.toCharArray();
String[] t2 = new String[t1.length];
HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
t3.setVCharType(HanyuPinyinVCharType.WITH_V);
String t4 = "";
int t0 = t1.length;
try {
for (int i = 0; i < t0; i++) {
// 判断是否为汉字字符
if (java.lang.Character.toString(t1[i]).matches("[\\u4E00-\\u9FA5]+")) {
t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);
t4 += t2[0].substring(0, 1);
} else {
t4 += java.lang.Character.toString(t1[i]);
}
}
} catch (BadHanyuPinyinOutputFormatCombination e1) {
e1.printStackTrace();
}
return t4;
}
--------------------编程问答-------------------- 先搞个效果图,你看能不能用, --------------------编程问答-------------------- 拼音和汉字不是1对1,怎么可能转。 --------------------编程问答-------------------- 可以做个异步调用,类似3楼。
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,