2008-06-19
url中含有中文的问题
在url中带有中文,如:http://localhost/cnadsys/ad.do?name=用户名;在action中直接使用request.getParameter("name")的时候,这个IE下正常,firefox下面则不行,如果使用转码,那firefox下可以,ie下则不行。造成的原因是tomcat中默认的是iso-8859-1,它已经进行了一次转码,因此这里就存在问题。
解决办法是对“用户名”进行编码,使用URLEncoder.encode(name,"GBK")进行转码,这个在java中进行,因此就不必再页面里写转码的代码了,此时在url中“用户名”则变成了“%D3%C3%BB%A7%C3%FB”。在action中获取的时候使用String name=request.getParameter("name")进行获取,对获取的字符串再进行转码,使用name=new String(name.getBytes("iso-8859-1"),"GBK")进行解码,这样获取的数据则是中文了。
解决办法是对“用户名”进行编码,使用URLEncoder.encode(name,"GBK")进行转码,这个在java中进行,因此就不必再页面里写转码的代码了,此时在url中“用户名”则变成了“%D3%C3%BB%A7%C3%FB”。在action中获取的时候使用String name=request.getParameter("name")进行获取,对获取的字符串再进行转码,使用name=new String(name.getBytes("iso-8859-1"),"GBK")进行解码,这样获取的数据则是中文了。
发表评论
- 浏览: 8721 次
- 性别:

- 来自: 北京、四川

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
Struts2.0上传初步学习
...
-- by vtegymtd888 -
时间控件My97DatePicker
这种js控件的使用范围和语言无关。
-- by wutao8818 -
sqlserver2005数据库收缩 ...
...
-- by liveglobe -
Scrum 资料
恩。。。。。。。
-- by canofy -
Scrum 资料
感谢lz和大家分享好东西。不过附件还是去掉吧,让大家到InfoQ中文站上下载,多 ...
-- by JasonLai






评论排行榜