ITKeyword,专注技术干货聚合推荐

注册 | 登录

URL上中文传参乱码解决方案

lgm277531070 分享于 2011-01-12

推荐:关于容器内URL传递中文参数乱码的解决方案

在做项目时,为了让中文不出现乱码,统一一个编码方式是必不可少的,但是有的时候即使将jsp页面,一些使用到的框架编码都统一之后,还是会出现中文乱码的问题,

2020腾讯云共同战“疫”,助力复工(优惠前所未有!4核8G,5M带宽 1684元/3年),
地址https://cloud.tencent.com/act/cps/redirect?redirect=1054

2020阿里云最低价产品入口,含代金券(新老用户有优惠),
地址https://www.aliyun.com/minisite/goods

      一般情况下,在tomcat/conf文件加下修改server.xml文件,加上URIEncoding="UTF-8",会解决中文乱码问题。不过有时候依然会出现乱码。我就遇见过。然后经过百度,google,基本上回答的都一样,使用URLEncoder编码和URLDecoder方法解码。

一开始使用encoder(String str)进行编码和decoder(String str)进行解码,结果依然发现头痛的乱码。后来再使用encoder(String str,"UTF-8")进行编码和decoder(String str,"UTF-8")进行解码。乱码问题才得以解决。

 

       为了测试encoder和decoder(我指后者带2个参数的)可用性,我把tomcat的URIEncoding="UTF-8"给去掉。结果发现,encoder和decoder的带1个参数的和带2个参数的方法都没用,都是乱码......  不明白中.....

 

       为了在测试编码问题上得到个很稳定的解决方案。我又试着使用new String(byte[] ,str)进行解码编码,结果杯具的发现。连这个也不好使了,我发誓,我曾经用这个解决过url编码问题,这次为什么又不行??

 

      我还记得,为了解决乱码的问题,使用了request.setCharacterEncoding("UTF-8")2次才能正常获取中文,那个汗啊。

 

推荐:url传递汉字乱码解决方案

 通过url传递汉字时,在服务器端出现乱码解决方法:   js:使用encodeURIComponent 加密汉字 在服务器端通过类似如下方式接受:     HttpUtility.UrlDecode(cont

 

      总之,如果在url上要传递中文的话,使用如下方法包你满意:

      第一步:在tomcat下的server.xml文件中添加URIEncoding="UTF-8";

      第二步:在传递中文前使用URLEncoder.encoder(String str,String charset)方法编码。在接收方使用URLDecoder.decoder(String str,String charset)方法进行解码。

 

      注:以上2步缺一不可哦。^O^

    

 

      另外。项目中传值也容易出现乱码,不过出现乱码问题无非就是编码不一致导致的,所以,力求将项目中所有文件都设置统一编码。文件属性的编码和文件中内容的编码都要设置哦。

推荐:Eclipse 中文注释乱码解决方案

            Eclipse 中文注释乱码解决方案                                   前言:          今天早上一来,打开 Eclipse  ,发现所有的注释都乱码了,这到底

      一般情况下,在tomcat/conf文件加下修改server.xml文件,加上URIEncoding="UTF-8",会解决中文乱码问题。不过有时候依然会出现乱码。我就遇见过。然后经过百度,google,基本上回答的都一

相关阅读排行


相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。