enctype="multipart/form-data"部分中文乱码怎么办
用了smartupload来上传图片结果其他的传递参数变成乱码了用过以下几种方式来接受参数StringworkName=newString(su.getRequest()...
用了smartupload来上传图片结果其他的传递参数变成乱码了
用过以下几种方式来接受参数
String workName =new String(su.getRequest().getParameter("workname").getBytes("gbk"),"utf-8");
String workName =new String(su.getRequest().getParameter("workname").getBytes(),"utf-8");
String workName =new String(su.getRequest().getParameter("workname").getBytes("iso-8859-1"),"utf-8");
都没有解决问题(部分中文变成乱码) 展开
用过以下几种方式来接受参数
String workName =new String(su.getRequest().getParameter("workname").getBytes("gbk"),"utf-8");
String workName =new String(su.getRequest().getParameter("workname").getBytes(),"utf-8");
String workName =new String(su.getRequest().getParameter("workname").getBytes("iso-8859-1"),"utf-8");
都没有解决问题(部分中文变成乱码) 展开
1个回答
展开全部
现象:采用smartupload上传文件时获取文件名及相关参数()时乱码.
原因:上传文件的页面会以页面指定的编码格式对上传的数据进行编码,smartupload在接收数据时会以系统默认的编码解码上传数据,如果页面编码与系统编码不一致,则会导致乱码
解决:
1.指定页面编码与系统编码一致:<meta
http-equiv="Content-Type" content="text/html;
charset=utf-8">,对于windows操作系统应为gbk,对于linux,要指定为export|grep
LANG中一致的编码格式.
2.修改smartupload.jar中的SmartUpload.java中: String s11 = new
String(m_binArray, m_startData, (m_endData - m_startData) + 1);
和getDataHeader方法中类似部分,加入charSet参数,手动指定编码
这里已经有修改好的smartupload.jar包,只需在上传时指定编码参数即可:su.upload("UTF8");
原因:上传文件的页面会以页面指定的编码格式对上传的数据进行编码,smartupload在接收数据时会以系统默认的编码解码上传数据,如果页面编码与系统编码不一致,则会导致乱码
解决:
1.指定页面编码与系统编码一致:<meta
http-equiv="Content-Type" content="text/html;
charset=utf-8">,对于windows操作系统应为gbk,对于linux,要指定为export|grep
LANG中一致的编码格式.
2.修改smartupload.jar中的SmartUpload.java中: String s11 = new
String(m_binArray, m_startData, (m_endData - m_startData) + 1);
和getDataHeader方法中类似部分,加入charSet参数,手动指定编码
这里已经有修改好的smartupload.jar包,只需在上传时指定编码参数即可:su.upload("UTF8");
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询