欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JQuery ajax的post方法向action传文件路径出现乱码(非中文乱码)  

程序员文章站 2022-06-07 14:46:19
...
在Jquery中使用post方法给服务器发送数据出现乱码,具体代码就现象如下:
js代码:
function loadChild(val){
//alert();
$.post('backstage/resource/toloadChild', {
path : "D:\tomcat-7.0.27\webapps\dssx\front\data\exam"
}, function(data) {
alert(data);
}, "xml");
}
Action中的接收代码:
public String loadChild() throws UnsupportedEncodingException{
request = ServletActionContext.getRequest();
request.setCharacterEncoding("utf-8");//没有这句也是乱码
File file = new File(request.getParameter("path"));
System.out.println(file.getPath());
return SUCCESS;
}


乱码如下:
D: omcat-7.0.27webappsdssx rontdataexam
如果js中用escape("D:\tomcat-7.0.27\webapps\dssx\front\data\exam")的话,就是这样的:
D%3A%09omcat-7.0.27webappsdssx%0Crontdataexam

网页都是使用UTF-8编码


解决办法:我发现其实只要把路径中的反斜杠改为正斜杠就可以了