导航:首页 > 编程语言 > 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中文解码相关的资料

热点内容
宝马e底盘如何降级编程 浏览:729
浩辰cad删除文件夹 浏览:82
怎样把pdf文件压缩10m内 浏览:63
js如何终止数据请求 浏览:32
win10共享文件夹独立密码 浏览:44
到仙桃数据谷怎么坐车 浏览:61
安卓奥迪A6l 浏览:475
编程里简述什么是副本机制 浏览:217
win10游戏模式不能打开 浏览:813
小米2s升级miui7卡在开机界面 浏览:113
网站建立起来后怎么运营 浏览:911
头条视频缓存文件在哪里 浏览:467
黑苹果加载原生电源 浏览:514
小米4升级系统电脑版 浏览:504
微信哪里重新加载数据 浏览:344
adbexe工具包下载 浏览:460
有创意的文件夹名称 浏览:989
pandas处理大的excel文件 浏览:136
jsurl中文解码 浏览:540
java动态移除jar 浏览:960

友情链接