`

JAVA 中URL链接中文参数乱码的若干处理方法

阅读更多
转自:http://www.sudu.cn/info/html/edu/20080208/275680.html
JAVA 中URL链接中文参数乱码的若干处理方法,目前整理收录如下:

方法一:

http://xxx.do?ptname=’我是中国人’

String strPtname = request.getParameter("ptname");

strPtname = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8");  

方法二:

<%@ page contentType="text/html;charset=gb2312" %>

<a href="ds.jsp?url=<%=java.net.URLEncoder.encode("编码的是这里","GB2312")%>">点击这里</a>

<%

//request.setCharacterEncoding("GBK");

if(request.getParameter("url")!=null)

{

str=request.getParameter("url");

str=java.net.URLDecoder.decode(str,"GB2312");

str=new String(str.getBytes("ISO-8859-1"));

out.print(str);

}

%>

==================================

public String chinatoString(String str)

     {

      String s=str;

      try

      {

       byte tempB[]=s.getBytes("ISO-8859-1");

       s=new String(tempB);

       return s;

      }

      catch(Exception e)

      {

       return s;

      }

    }

====================================================

function URLencode(sStr)

    {

      return escape(sStr).

               replace(/+/g, ’%2B’).

                  replace(/"/g,’%22’).

                     replace(/’/g, ’%27’).

                       replace(///g,’%2F’);

    }

方法三:

如果用jstl的话,能自己写一个el的function,调用URLEncoder.encode来编码。

IE缺省对URL后面的参数是不编码发送的,不过tomat缺省是按ISO8859-1来进行URL解码,因此才会出现上述错误。好的做法是:

1、在URL参数中确保用UTF-8编码之,方法能用js函数encodeURI(),或调用自定义的el function;

2、设置server.xml中的Connector熟悉URIEncoding="UTF-8",确保解码格式和编码格式统一;

方法四:

<script>

for(var i=0;i<document.links.length;i++){

document.links[i].href=encodeURI(document.links[i].href);

}

</script>

在action中,String s=request.getParameter("s");

s=new String(s.getBytes("iso-8859-1"),"gbk");

以上方法是收聚了一些网友所讲的解决方法 。

分享到:
评论

相关推荐

    java URL中文参数乱码处理

    js 中乱码处理法方式 encodeURIComponent(encodeURIComponent(customerAddress)) decodeURIComponent(customerName) js到java encodeURI(url) String qijuType= new String(request.getParameter( (...

    JAVA(Web)中URL链接中文参数乱码:

    JAVA(Web)中URL链接中文参数乱码,如,java web中的超链接&lt;a&gt;&lt;/a&gt;标签传中文参数,提交到servlet中后,解决乱码问题!

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

    在Java开发中,遇到中文乱码问题是一种常见的挑战,特别是在处理URL时。URL中文乱码问题主要是由于URL编码和解码过程中的不一致导致的。下面将详细介绍如何解决这个问题,并探讨几种常用的方法。 首先,我们需要...

    JSP对URL链接中的中文乱码处理方法总结.docx

    JSP 对 URL 链接中的中文乱码处理方法总结 JSP 对 URL 链接中的中文乱码处理方法总结是指在 JSP 应用程序中,如何正确地处理 URL 链接中的中文字符编码问题。这个问题的出现是由于不同浏览器和服务器的默认编码方式...

    asp.net中URL参数传值中文乱码的三种解决办法

    这样,浏览器在解析页面内容时会按照UTF-8进行,包括URL中的参数。 ### 方法三:程序代码处理 在接收URL参数的地方,可以通过编程方式来处理中文乱码。例如在`Page_Load`事件中,使用`HttpUtility.UrlDecode`方法...

    php中url地址栏传参数中文乱码解决方法汇总

    php 中 URL 地址栏传参数中文乱码解决方法汇总 PHP 中 URL 地址栏传参数中文乱码解决方法汇总是指在 PHP 编程中,如何解决 URL 地址栏传参数中文乱码的问题。这个问题是由于浏览器和服务器之间的编码问题引起的。 ...

    Java Http请求传json数据乱码问题的解决

    在后端Java代码中,处理请求参数时可能会遇到乱码问题。例如,使用`request.getParameter("params")`获取参数时,如果请求时的编码和服务器端解析的编码不一致,就会出现乱码。在本例中,服务端代码使用了`...

    jquery获取URL中参数解决中文乱码问题的两种方法

    以上两种方法在处理URL中的参数时,需要注意如果参数值中包含中文字符,那么在发送参数之前需要对其进行URL编码(使用 `encodeURI` 函数),在接收参数之后需要对URL编码的字符串进行解码(使用 `decodeURI` 函数)...

    JAVA常见中文乱码问题解决方法

    通过上述方法,可以有效解决Java在处理中文字符时可能出现的乱码问题,确保程序在各种环境下正确显示中文。在开发过程中,保持编码一致性,理解和利用Java提供的字符编码工具,是预防和解决这类问题的关键。

    url地址传参中文乱码处理

    URL地址传参中文乱码处理是指在Web应用程序中,将中文参数传递给服务器时,可能出现乱码的情况。这种情况可能是由于编码问题或Tomcat服务器的配置问题引起的。 在处理URL地址传参中文乱码时,通常有三种解决方案: ...

    Delphi10中idHttpServer接收中文参数乱码的处理

    但在接收浏览器发送的带中文URL时,取参数就会是乱码。经过查找资源,发现大部分浏览器,中文一般会先转码为utf-8,此时,idHttpServer控件会根据请求头中ContentType的Chatset进行相应的转码,以形成正确的参数。但...

    Java关于中文乱码问题的多种解决方法

    在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...

    java 中文乱码 处理

    以上介绍了几种常见的Java中文乱码处理方法,包括请求参数编码转换、字符串转义与反转义、前端JavaScript处理以及配置J2EE应用程序。每种方法都有其适用场景,开发者可以根据实际情况选择合适的方法来解决乱码问题。...

    java读写csv文件,中文乱码问题

    总的来说,处理Java中CSV文件的中文乱码问题主要涉及正确设置字符编码,而给定的.NET DLL文件与此问题的解决没有直接关联。如果你在.NET环境中遇到类似问题,可以参考.NET的编码处理方式,或者寻找适合的.NET库来...

    java代码-使用java解决中文参数乱码问题的源代码

    java代码-使用java解决中文参数乱码问题的源代码 ——学习参考资料:仅用于个人学习使用!

    JAVA反编译文件解决中文乱码

    然而,当这些.class文件中包含中文字符时,如果没有正确处理编码,可能会出现中文乱码的问题。本文将详细介绍如何解决JAVA反编译文件时的中文乱码问题。 首先,理解问题的根源:Java源代码默认采用UTF-8编码,但...

    java中文乱码解决问题

    JAVA 中文乱码问题是开发过程中常见的问题之一,解决这个问题需要了解乱码产生的原因,然后对症下药。下面我们对容易产生乱码问题的场景进行分析,并提出解决方案。 1. 以 POST 方法提交的表单数据中有中文字符 在...

    URL传参数时中文乱码解决方法

    在IT领域,尤其是在Web开发中,处理URL传递参数时遇到中文乱码是一个常见的问题,尤其当数据需要跨系统或在不同编码环境下传输时更为显著。本文将深入探讨URL传参数时中文乱码的原因、影响以及如何有效解决这一问题...

    解析Java中文乱码的处理方法

    本篇文章将深入探讨Java中处理中文乱码的各种方法,帮助开发者有效解决这类问题。 首先,我们要了解Java中的字符编码。Java采用Unicode字符集,其内部字符串是以UTF-16编码存储的。这意味着Java可以处理世界上大...

    java处理中文乱码

    下面将详细介绍三种处理Java中中文乱码的方法。 方法一:类字符转换 这个方法涉及到将字符串从一种编码格式转换为另一种编码格式。在给出的示例中,`util.Encoding` 类的 `isToGB` 方法用于将ISO_8859_1编码的字符...

Global site tag (gtag.js) - Google Analytics