导航:首页 > 编程语言 > jsurl中文解码

jsurl中文解码

发布时间:2024-10-19 07:33:25

『壹』 SSH环境 jsp url跳转,带中文参数乱码问题 高手请进,谢谢

URL中编码格式为ISO-8859-1,处理中文只需将编码格式转换ISO-8859-1

方法一:
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");

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

『贰』 用JS将URL中的汉字编码成GBK,怎么弄

varGB2312UnicodeConverter={
ToUnicode:function(str){
returnescape(str).toLocaleLowerCase().replace(/%u/gi,'\u');
}
,ToGB2312:function(str){
returnunescape(str.replace(/\u/gi,'%u'));
}
};

用此方法试试。

个人觉得这个转码的工作最好还版是在接收端权做

『叁』 urlencoder.encode,"utf-8" 编码 js什么解码

1、汉字出现在URL路径部分的时候不需要编码解码;
2、使用encodeURI进行2次编码;
3、在openModelDialog()打开的模式窗体里没办法用request.getParameter正确获取参数;
客户端和服务器在传递数据时可以用过滤器filter解决字符编码问题,但filter只能解决post方式提交的数据。对于get方式,可以使用两次encodeURI(encodeURI(“中文”))并在服务器中使用URLDecoder.decode(“中文”,
"UTF-8");
今天用Ajax校验数据时也遇到这个问题,尽管页面、类和web容器都统一了字符编码,提交的数据依然是乱码,所以就采用了2次encodeURI()编码方式,乱码问题就解决了。
在页面中:
/exportExcel.topinfo?ls="+encodeURI(encodeURI(_tmplsgx))+"&zt="+encodeURI(encodeURI(_tmpzt))
在action中
String ls=request.getParameter("ls");
ls = new String(ls.getBytes("iso-8859-1"),"utf-8");
ls = java.net.URLDecoder.decode(ls,"UTF-8");
这样乱码就解决了。

『肆』 js 传值url 乱码问题

JS是UTF-8的,那你接收的文件是不是GB类型的?两者语言不一致,导致出现乱码。专
我刚调试完自己写的类似ajax的一段属JS。
ajax({
url:"http://",
method:'post',
type:"gb2312",
success:function(){...}
})

这里多了“type:gb2312”,就是告诉ajax,提交类型为非UTF-8类型,在提交的时候就可以将中文字符通过VBurlencode进行转换。比将“中国”转换成“%D6%D0%B9%FA”,而非escape("中文文字")。

阅读全文

与jsurl中文解码相关的资料

热点内容
苹果7如何使用万能钥匙 浏览:254
微信文件传送电脑 浏览:600
什么app可以解压百度云rar 浏览:627
苹果6sp换壳 浏览:956
海盗船k70rgb灯光配置文件 浏览:336
linuxfsstat 浏览:926
电脑文件有个锁 浏览:441
ps多张pdf文件夹 浏览:2
怎样压缩文件能传到qq邮箱 浏览:923
南昌房管局网站怎么查备案 浏览:884
如何设置ipad下载密码 浏览:458
ae信号干扰教程 浏览:548
电脑之前删掉的文件怎么找 浏览:805
索尼z1刷什么系统升级 浏览:466
自创字体怎么编程序 浏览:381
成都的苹果售后服务电话号码 浏览:698
文件放笔记本哪个盘 浏览:745
starbound星球文件格式 浏览:137
javathis和super 浏览:782
iphone5左上角翘屏 浏览:863

友情链接