`

java URLEncoder URLDecoder 和js encodeURI

阅读更多

 

 

个人理解中文传送的时后需要转码:

js代码:
要进行两次转码才不会出现乱码(默认为UTF-8)
encodeURI(encodeURI(http://localhost/qq/index.jsp?title=专业));


java接收参数代码:
	String title = request.getParameter("title");
	title = URLDecoder.decode(title, "UTF-8");


java 编码:
  http://localhost/qq/index.jsp?title=URLEncoder.encode(URLEncoder.encode(title,"UTF-8"));


本地开发时候没有乱码,可是到linux中出现乱码, 下面是解决的方法, 但没有找到乱码的原因,以下作为使用记录。 

	1传递中文
		parent.location.href=queryURL+"?title="+encodeURI(encodeURI(title ) );
	
	2 有存在iframe,则decode参数,后传递数据。
		<%
			String title = request.getParameter("title");
			if(title !=null ){
				title = java.net.URLDecoder.decode(title, "UTF-8");
   //如果这里还是乱码则用下面的方法转码
// title=new String(title.getBytes("GBK"),"ISO8859-1");
			}
		%>
		<iframe height="530" width="100%" src="newsList${ suffix}?c2str=${c2str}&tabid=1&title=<%=(title!=null?title:"")%>&area=${ !empty param.area? param.area:'' }" id="newsList" scrolling="no" frameborder="0"></iframe>

	3第三个页面接收数据再次转码
	title = URLDecoder.decode(URLDecoder.decode(title, "UTF-8") ,"UTF-8") ;
 



作为个人记录用。

 

 

 在编码与解码的时候要注意页面的编码也会影响到encode的编码结果。

分享到:
评论

相关推荐

    java中URLEncoder.encode与URLDecoder.decode处理url特殊参数的方法

    `URLEncoder.encode()` 和 `URLDecoder.decode()` 是Java标准库中的两个关键方法,分别用于对URL参数进行编码和解码,以确保数据能够正确无误地在网络间传输。 **`URLEncoder.encode()`** 方法接受两个参数:需要...

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

    - Java标准库提供了`java.net.URLDecoder` 和 `java.net.URLEncoder` 类,可以用于编码和解码URL。在某些场景下,它们可能比直接操作字符串更安全和方便。 总之,解决Java中的URL中文乱码问题需要理解URL编码的...

    java 中类似js encodeURIComponent 函数的实现案例

    然而,通过组合Java的`URLEncoder`和`URLDecoder`类,我们可以创建一个兼容的实现。下面将详细讨论如何实现这一功能,以及`encodeURIComponent`和`decodeURIComponent`方法的工作原理。 `encodeURIComponent`函数的...

    javascript中encodeURI和decodeURI方法使用介绍

    一、基本概念 encodeURI和decodeURI是成对来使用的,因为浏览器的地址栏有中文字符的话,可以会出现不可预期的错误,所以可以encodeURI把非英文字符转化为... encodeURI()方法相当于java.net.URLEncoder.encode(URIStri

    jsurl传值java页面url传值中文编码&amp;amp;amp;解码共2页

    在JavaScript和Java中,处理URL参数,特别是涉及到中文字符时,需要特别关注编码和解码的问题。本主题将深入探讨“jsurl传值”与“java页面url传值中文编码&解码”的相关知识点。 首先,我们要了解URL编码。URL编码...

    java中文乱码

    在传参的 jsp 对中文进行编码可以使用 java.net.URLEncoder.encode 函数,在接受的 jsp 对中文进行转码可以使用 URLDecoder.decode 函数。 四、Java 与数据库之间的乱码 大部分数据库都支持以 unicode 编码方式,...

    java前后台(含数据库)乱码大综合

    其次,Ajax发送中文参数时可能出现乱码,可以使用JavaScript的`encodeURI()`函数进行编码,服务器端再通过Java的`URLDecoder.decode()`进行解码,确保数据在传输过程中的正确性: ```javascript var result = "张凯...

    url地址传参中文乱码处理

    (2)使用encodeURI(“xxxx”)和java.net.URLDecoder.decode("xxxx",“utf-8")。 这两种转码方式是很好用的,所以很建议大家使用。 3. 修改Tomcat配置文件:在Tomcat的安装目录下conf文件夹中的server.xml文件,将...

    domino xpages URL中文传值

    在 Domino XPages 开发中,有时我们需要通过 URL 传递参数,...通过使用 `encodeURI()` 和 `URLDecoder.decode()`,可以有效地处理中文字符的传输,同时结合其他技术如随机参数,可以解决缓存问题并确保请求的唯一性。

    web编码问题小结.doc

    - **URLEncoder/URLDecoder**:属于Java API,用于处理URL参数编码与解码。 - **encodeURI/decodeURI**:JavaScript内置函数,用于编码与解码整个URI。 正确理解并运用这些编码机制,是解决Web开发中字符编码问题...

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

    在服务端,可以使用 java.net.URLDecoder.decode() 函数来解码参数。 方法二:对参数进行单独编码 这种方法是通过对参数进行单独编码来避免中文乱码问题。例如: xxx.dtoptname=中文参数 String strPtname = ...

    url特殊字符

    Python中,有`urllib.parse.quote()`和`.unquote()`方法,Java中则有`java.net.URLEncoder.encode()`和`java.net.URLDecoder.decode()`。 工具方面,有一些在线的URL编码解码工具可以帮助开发者快速处理URL中的特殊...

    struts2中通过json传值解决乱码问题的实现方法

    除了使用encodeURI和URLDecoder,还可以使用encodeURIComponent和URLEncoder工具类。encodeURIComponent与encodeURI相似,但它们编码的范围不同。encodeURIComponent函数能对URI中的所有字符进行编码,而encodeURI...

    从js向Action传中文参数出现乱码问题的解决方法

    此外,开发者还需要了解并掌握在不同的编程语言和框架中如何处理编码问题,例如在Java中使用`URLEncoder`和`URLDecoder`,在JavaScript中使用`encodeURI`或`encodeURIComponent`等函数。 ### 总结 中文乱码问题在...

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

    总结来看,处理JSP中URL中文乱码问题主要涉及到对URL参数进行合适的编码和解码,这不仅包括在客户端使用JavaScript的encodeURI()和encodeURIComponent()函数,还包括在服务器端使用Java的URLEncoder和URLDecoder类。...

    jsp传参特殊字符

    对于JSP项目中通过URL传参涉及到特殊字符的情况,正确的做法是在前端使用JavaScript的`encodeURIComponent()`函数进行编码,在后端使用Java的`URLDecoder.decode()`进行解码。这样可以确保特殊字符被正确处理,避免...

    get方式传参中文乱码问题的解决方案

    - 在客户端使用JavaScript的`encodeURI()`或`encodeURIComponent()`函数对参数进行编码。 - 示例代码:`var url = "play.jsp?keyWord=" + encodeURIComponent(keyWord);` 2. **服务器端解码**: - 使用Java的`...

    GET 方式提交的含有特殊字符的参数

    在Java中,可以使用`java.net.URLDecoder.decode()`方法,而在JavaScript中,可以使用`decodeURIComponent()`函数。 总的来说,处理GET方式提交的含有特殊字符的参数时,关键在于正确编码和解码URL,确保服务器能...

    简单实例处理url特殊符号&amp;处理(2种方法)

    在服务器端,Java提供`URLEncoder.encode()`方法用于编码URL参数,而`URLDecoder.decode()`用于解码。确保在编码和解码时使用相同的字符集,以避免数据丢失或解析错误。 总结来说,处理URL特殊符号,尤其是`&`,...

Global site tag (gtag.js) - Google Analytics