日期:2014-05-17  浏览次数:20674 次

上传文件名是乱码
用“ajaxfileupload”+“jspSmartUpload”做的上传文件模块,文件名为中文时,上传到服务器的名字是乱码,页面设置的编码都是UTF-8的,请教达人们怎么办?

------解决方案--------------------
(1)看看ajaxfileupload等是不是需要配置相关的编码;
(2)确认页面的pageEncoding和<meta http-equiv="content-type" content="text/html; charset=..." />。
------解决方案--------------------
“ajaxfileupload”+“jspSmartUpload”
什么意思,同时用两个?
如果用smartupload,那么在你没有改它的源码前,要在上传的时候设置编码为gbk,
调用HttpServletRequest的setCharacterEncoding()方法。
如果你用UTF-8会是乱码,用UTF-8必须改它的源码。
------解决方案--------------------
字符串.getBytes("ISO-8859-1");   或 request.setcharacterEncoding("gbk");
------解决方案--------------------
引用:
这是前台提交的代码:
JScript code
        $.ajaxFileUpload({
            url : 'accessory/doFileUpload.jsp',
            secureuri : false,
            fileElementId : 'upfile',
            dataType : 'json'……
我现在也在研究这个,首先是 request.getParameter("filename");这个方法已经不能用了,要用SmartUpload.getRequest.getParameter();来取值 。你在看看,希望对你有所帮助。