java URL乱码的解决办法_java

平常我们都是encode 一次,然后直接接受参数

String para = request.getParameter(paramName);  这是因为容器自动能帮我们解码 (DECODE)

一般来说,  encode 的时候,使用的 UTF-8(系统的 编码)  那么解码的时候也是使用   UTF-8的话, 那么不会出现传说中的乱码~

但是如果 在JSP 页面 使用的UTF-8,但是  容器 解码的时候 使用的 别的编码的话,则有可能出现乱码

这个时候.一般可以使用:

String  param = new String(request.getParameter(paramName).getBytes("ISO-8859-1"),"UTF-8");

也能出来.

所有的手段都使了.还是搞不定怎么办?

怎么解决这种多服务器导致的 编码  问题:

假设 字符串:  = "阳";

Encode  一次  %E9%98%B3

Encode  两次   %2525E9%252598%2525B3

在第二次的时候 ,容器自动解的这一次,不管是按 GBK 还是 UTF-8 还是 ISO-8859-1 都好,都能够正确的得到 %E9%98%B3

那么 只要自身在进行 Decode 一次  就能得到  "阳"

时间: 2024-12-10 23:43:26

java URL乱码的解决办法_java的相关文章

java页面中文乱码的解决办法_java

在页面提交到tomcat乱码 解决方法是在tomcat/conf/server.xml中进行配置以tomcat6.0.32为例,需将以下代码:Xml代码 复制代码 代码如下: <Connectorport="8080"protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"/><Connector port="8080"

ajax中文乱码各种解决办法总结

 由于XMLHTTP采用的是Unicode编码上传数据,而一般页面采用的是gb2312,这就造成显示页面时产生乱码.而当在获取页面时的XMLHttp返回的是utf-8编码,这就造成了显示产生乱码. 有一种解决办法就是使用encodeURIComponent加上修改 Content-Type 为 application/x-www-form-urlencoded" 来把数据统一编码成 url 格式,当然,也可以指定编码,如:"application/x-www-form-urlencod

PHP读取mssql json数据中文乱码的解决办法_php实例

PHP及网页使用UTF-8编码,数据库是sql server2008,使用默认编码(936,即GBK编码) 当读取数据库数据时,使用php自带的json_encode()返回到前端,结果中文不显示. 解决办法如下: 这样,sql server 2008中的中文就可以在网页正常显示了. 如果要将中文正常插入到sql server 2008中,还要加入一条代码:$query = iconv("utf-8", "gbk//ignore", $query);//为了解决中文

XP系统电脑打印文字字体出现乱码的解决办法

  XP系统电脑打印文字字体出现乱码的解决办法          1.在左侧程序里选择"控制面板",打开窗口,双击"字体"图标(在打开的对话框中保证打印机已正常安装).图片显示在最下一排,第二个. 2.假如所打印的字体没有安装,可选择"文件F(在窗口的左上角)",打开下属栏,选择"安装新字体"选项,在打开的"添加字体"对话框中选择字体所在路径,就可以进行字体的安装了. 3.双击选中的字体图标,在打开的对话框

Mac系统新建TXT文档以及出现乱码的解决办法

  使用mac的朋友可能都有这样的疑问,mac系统下强大的文本编辑器居然不能保存常用的TXT格式?又或者打开在windows上保存的TXT文件会出现这样的问题(如下图),所以小编特意给大家分享一下解决的方法. 文档以及出现乱码的解决办法-新建文本文档乱码"> 创建TXT文稿 我们平常打开mac的文本编辑器的时候是下面这个样子的 此时按下shift⇧+command⌘+T就会变成下面这个情况 其实这个快捷键就是"菜单"--"格式"选项里面的"

C#中WebClient使用DownloadString中文乱码的解决办法

原文:C#中WebClient中文乱码的解决办法 第一次尝试:  string question = textBox1.Text.ToString(); WebClient client= new WebClient(); client.Encoding = System.Text.Encoding.GetEncoding("GB2312"); Uri uri = new Uri("http://xxxxxxxxxxxxxx"); textBox1.Text =cl

PHP页面转UTF-8中文编码乱码的解决办法_php技巧

对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php文件乱码和页面乱码. PHP页面转UTF-8编码问题 1.在代码开始出加入一行:header("Content-Type: text/html;charset=utf-8"); 2.PHP文件编码问题 点击编辑器的菜单:"文件"->"另存为",可以看到当前文件的编码,确保文件编码为:UTF-8, 如果是ANSI,需要将编码改成:UTF-8. 3.PHP文件头BOM问题:

Java中URL传中文时乱码的解决方法_java

前言 Java中URL传中文时乱码的问题相信不少朋友都遇到过,最近就遇到一个问题,就是在Action当中把一条中文信息绑定在URL的后面,ActionForward到别一个页面时,用reqeust.getParameter取出是出现乱码的问题. 解决办法 1.对要进行URL传递的中文字符进行编码: String message = java.net.URLEncoder.encode("中文字符","utf-8"); 2.在取URL传递中文的页面对字符进行解码: S

java中文乱码之解决URL中文乱码问题的方法_java

我们主要通过两种形式提交向服务器发送请求:URL.表单.而表单形式一般都不会出现乱码问题,乱码问题主要是在URL上面.通过前面几篇博客的介绍我们知道URL向服务器发送请求编码过程实在是实在太混乱了.不同的操作系统.不同的浏览器.不同的网页字符集,将导致完全不同的编码结果.如果程序员要把每一种结果都考虑进去,是不是太恐怖了?有没有办法,能够保证客户端只用一种编码方法向服务器发出请求? 有!这里我主要提供以下几种方法 一.javascript使用javascript编码不给浏览器插手的机会,编码之后