如何实现拼音或者简写选择城市?

darkfreedom 2010-07-26 03:49:14
想修改下网站的城市选择,做成比较流行的,按照拼音或者简写来获得城市
有没有相关的案例,或者说下,用什么方法实现比较快。
我用的框架是struts2+spring+hibernate
...全文
269 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
darkfreedom 2010-08-06
  • 打赏
  • 举报
回复
谢谢各位了~
前段时间忙,忘记结贴了~
ytx98 2010-07-30
  • 打赏
  • 举报
回复
貌似从汉字可以编程获取其拼音吧 不过多音字怎么处理 呵呵
dxhdxh2k 2010-07-27
  • 打赏
  • 举报
回复
extJS里面有个例子,完全满足你的要求
qingliang_hu 2010-07-27
  • 打赏
  • 举报
回复
忘了一个函数,补上了:在简拼里需要用到的这个函数
/**
*
* Description: <br>
* 1、用于生成全屏的函数
* 2、…<br>
* Implement: <br>
* 1、…<br>
* 2、…<br>
*
* @param chinese
* @return String 生成的全屏字符串
* @see
*/
public static String createFullSpell(String chinese)
{
// String temp = chinese;
String result = "";

if (chinese == null || "".equals(chinese))
{
return chinese;
}

HanyuPinyinOutputFormat outputFormat = new HanyuPinyinOutputFormat();
outputFormat.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
outputFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
outputFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);// 设置为大写字母
result = PinyinHelper.toHanyuPinyinString(chinese, outputFormat, " ");

return result;

}
qingliang_hu 2010-07-27
  • 打赏
  • 举报
回复
楼主可以把所有城市名和通过jpCreateHelper转换的简拼一起放入一个HashMap容器,拼音作为key,中文地名作为value。

如输入bj
就通过HahsMap的get方法得到“北京”了!
qingliang_hu 2010-07-27
  • 打赏
  • 举报
回复
有个拼音插件,pinyin4j.jar
/**
*
* Description: <br>
* 1、用于生成简拼 2、…<br>
* Implement: <br>
* 1、…<br>
* 2、…<br>
*
* @param chinese
* @return
* @see
*/
public static String jpCreateHelper(String chinese)
{
if (chinese == null || "".equals(chinese))
{
return chinese;
}

// 生成全拼
String pinyin = createFullSpell(chinese);
StringBuffer sb = new StringBuffer(Constants.STRINGBUFFER_INITIALSIZE);

if (!("".equals(pinyin)))
{
// 取全拼首字母生成简拼
String[] word = pinyin.split(" ");
char tempchar;

for (int i = 0; i < word.length; i++)
{
if (!"".equals(word[i]))
{
tempchar = word[i].charAt(0);
if (SortHelper.isNormalChar(tempchar))
{
sb.append(word[i].charAt(0));
}
}
else
{
sb.append(" ");
}
}

}
return sb.toString();

}
很好用的!
dragonsky_w 2010-07-27
  • 打赏
  • 举报
回复
拜托,谁有例子给一个参考一下了,学习一下……
Cristal_snow 2010-07-26
  • 打赏
  • 举报
回复
来学习的..
dcjz 2010-07-26
  • 打赏
  • 举报
回复
索引 啊 索引啊
hoojo 2010-07-26
  • 打赏
  • 举报
回复
建立一个拼音和汉字对应的索引库,通过索引库进行查询即可
darkfreedom 2010-07-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 emisfan 的回复:]

你不是用的级联吗?现在都是级联好不好?三个下拉框:省->市->区,选择湖南->然后第二个下拉变成长沙..株洲....,你不是级联吗?
[/Quote]
能不能详细一点~
darkfreedom 2010-07-26
  • 打赏
  • 举报
回复
级联也是一种很友好的方式~
不过拼音还是要做的,不过我没怎么用过Ajax~
撸撸猴 2010-07-26
  • 打赏
  • 举报
回复
你不是用的级联吗?现在都是级联好不好?三个下拉框:省->市->区,选择湖南->然后第二个下拉变成长沙..株洲....,你不是级联吗?
zoujp_xyz 2010-07-26
  • 打赏
  • 举报
回复
用键值对保存起来试试
[{key:"bj",value:"北京"},{key:"sh",value:"上海"}]

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧