[求助]无法使用Ajax提交中文数据!

捏造的信仰 中南迅智 架构师  2006-02-21 01:22:26
页面编码为GB2312,向Servlet提交“中华人民共和国万岁!”,Servlet接收到的却是“涓????浜烘????卞????戒??宀?锛?”Servlet编码同样是GB2312。在Web服务器中已经设置了传入参数都作GB2312处理。如何解决?谢谢!
...全文
109 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
CFZC 2006-02-27
gb2312
回复
zorro09 2006-02-27
你的页面也换成GBK吧~~,不过最好的方式还是用UTF-8
回复
zorro09 2006-02-27
Servlet中加上 request.setCharacterEncoding("GBK");
回复
meizz 2006-02-27
页面编码改成UTF-8,页面文件也另存为UTF-8。
回复
programdolt 2006-02-27
我escape后传过去的参数为NULL,不进行escape传过去的英文正常,中午乱码。我是用 http_request.send(data);传送数据过去的。
如果直接在url后面加?test=中文,这个没问题,把ISO-8859-1转为GBK就可以了。
回复
Iamshigang 2006-02-21
ding
回复
捏造的信仰 2006-02-21
试过了,不行。

不过这个先放一边,我发现一个问题,比方:
String str = "王老五";
String teststr = new String(str.getBytes("GB2312"), "UTF-8");
String recover = new String(teststr.getBytes("UTF-8"), "GB2312");

按道理讲recover的内容应该会恢复成str的内容一样吧,但是显示出来recover还是乱码,这是为什么呢?
回复
usaspy 2006-02-21
先转单字节码 iso-8859-1,然后再转成GB2312

new String(str.getBytes("ISO-8859-1"),"GB23212")
回复
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2006-02-21 01:22
社区公告
暂无公告