A. java的url编码
URL编码如果是英文和数字,输出的当然相同了,要用符号或者汉字才能看到变化
B. java里如何将字符转为url码
Java可以使用URLEncoder提供的转换字符的方法来对普通字符串进行转换格式,示例如下:
importjava.net.URLDecoder;
importjava.net.URLEncoder;
publicclassURLDecoderTest{
publicstaticvoidmain(String[]args)throwsException{
//将application/x-www-form-urlencoded字符串
//转换成普通字符串
//必须强调的是编码方式必须正确,如的是gb2312,而google的是UTF-8
StringkeyWord=URLDecoder.decode("%E6%96%87%E6%A1%A3","gb2312");
System.out.println(keyWord);//将普通字符串转换成
//application/x-www-form-urlencoded字符串
//必须强调的是编码方式必须正确,如的是gb2312,而google的是UTF-8
StringurlStr=URLEncoder.encode("文档","gb2312");
System.out.println(urlStr);
}
}
C. java url 编码
POST过去的数据是不用URL编码的。
你先request.getParameter("xm")获取下,看是否正确,如果是问号的话就转换下
new String(request.getParameter("xm").getBytes("iso8859_1"),"gbk");
你这个是在Java里面获取的?request是JSP里面的一个对象,在Java里就需要传入一个HttpServletRequest实例了。
D. java短信的url怎么处理中文乱码怎么处理
1、在客户端用escape(encodeURIComponent(fieldValue))方法编码,例如:
复制代码代码如下:
title=escape(encodeURIComponent(title)); //这是js里的函数
url="<%=request.getContextPath()%>/print/printList!printTable.action?title="+title;
2、在服务端用java.net.URLDecoder.decode(getRequest().getParameter("title"),"UTF-8"),进行解码。
-----------------------------------------------------------------------------
parent.window.location.href 和 iframe中src的乱码问题。
要在这两个url地址中传中文,必须加编码,然后再解码。
编码:encodeURI(encodeURI("包含中文的串"))
解码:java.net.URLDecoder.decode("需要解码的串","utf-8");
E. 解析URL中的汉字参数 Java
import java.net.URLDecoder;
import java.net.URLEncoder;
String strTest = "?=abc?中%1&2<3,4>";
strTest = URLEncoder.encode(strTest, "UTF-8");
System.out.println(strTest);
strTest = URLDecoder.decode(strTest,"UTF-8");
System.out.println(strTest);
F. java url中文参数怎么成编码
成为编码,就是因为它对中文进行编码诶,编码方式很多,最简单的一种就是base64,。
G. 地址栏中有汉字,java如何利用对url编码求解
地址栏中出现汉字的情况有两种,一种是汉字出现在URL的路径部分,一种是汉字出现在URL的传参的部分,第二种情况的时候必须采用编码后传参,接受时解码的方式完成传参。js中编码有escape(),encodeURI(),encodeURIComponent()三个常用的方法,escape()常常用在提交页面和处理页面的编码格式相同的情况下(比如它们都是GB2312),encodeURI()和encodeURIComponent()的用法基本相同,区别在于encodeURIComponent()也对"?"等特殊字符进行编码。
一开始遇到中文参数的时候,使用encodeURI()进行了一遍编码,传过去后,发现解码出现问题,于是想到可能是编码方法使用错误,于是使用escape()方法,这时发现解码时抛出isHexDigit异常。借助网络搜索isHexDigit异常,
发现原来,是escape()方法造成了异常,同时了解了浏览器传递地址的一些原理,在浏览器地址栏里,浏览器认为%是个转义字符,浏览器会把%与%之间的编码,两位两位取出后进行解码,然后再传递给处理页面,
然后由处理页面进行再次解码。由此我想到一直使用encodeURI方法是正确的,只是需要使用两次encodeURI方法,例如encodeURI(encodeURI("中文"));第一次是把中文编码成%xy的格式,
第二次是对%xy中的%进行编码,%编码成%25。整个传参过程大体应该是:提交页面使用encodeURI(encodeURI("中文"))编码,把最后的编码结果%25xy传递给处理页面的过程中,浏览器获取URL地址
(注意openModelDialog方法,浏览器获取不到参数编码)后解码成%xy,然后把%xy传递给处理页面,处理页面使用URLDecoder.decode(request.getParameter("参数名"),"UTF-8");完成解码。
总结:1、汉字出现在URL路径部分的时候不需要编码解码;
H. java url中文转码问题
你这是从Servlet中取参然后在界面显示是吧,JSP这个你设置的没:<%@page pageEncoding="utf-8" contentType="utf-8" %>
以及request,response的设置:
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
I. java如何访问带中文路径的url
可以用二进制,先把中文全部转换,然后传值,在服务器中相应的转换为10进制