方法:

MultipartParser mp = new MultipartParser(request, 10*1024*1024);
mp.setEncoding("GBK"); //加上这行代码即可

示例:

upload.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>enctype属性测试</title>
</head> <body>
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="cosUpload.jsp">
上传文件: <input type="file" name="file" /><br>
请求参数 <input type="text" name="wawa" /><br>
<input name="dd" type="submit" value="提交" />
</form>
</body>
</html>

cosUpload.jsp

<%@ page contentType="text/html;charset=GBK" import="java.io.*,java.util.*"%>
<%@ page import="com.oreilly.servlet.multipart.*,com.oreilly.servlet.*"%>
<% //设置POST请求的内容最大字节为10M,该类用于解析HTTP请求
MultipartParser mp = new MultipartParser(request, 10*1024*1024);
mp.setEncoding("GBK");
//所有表单域都是Part实例
Part part;
//遍历请求中的所有表单域
while ((part = mp.readNextPart()) != null)
{
//取得表单域的name属性值
String name = part.getName();
//对于普通表单域
if (part.isParam())
{
//取得普通表单域的值
ParamPart paramPart = (ParamPart) part;
String value = paramPart.getStringValue("GBK");
out.print("普通表单域部分:<br> name=" + name + "; value=" + value + "<br>");
}
//对于文件域
else if (part.isFile())
{
//取得文件上传域
FilePart filePart = (FilePart) part;
String fileName = filePart.getFileName();
if (fileName != null)
{
//输出文件内容
long size = filePart.writeTo(new File(request.getRealPath("/")));
out.println("上传文件:<br> 文件域的名=" + name + "; 文件名=" + fileName + "<br>" +
"上传文件的路径=" + filePart.getFilePath() + "<br>" +
"文件内容类型=" + filePart.getContentType() + "<br>" +
"文件大小=" + size + "<br>");
}
//文件名为空
else
{
//该文件域没有输入文件名
out.println("file: name=" + name + "; EMPTY");
}
out.flush();
}
}
%>

FileUpload

对于FileUpload组件,用upload.setHeaderEncoding()来解决文件名的乱码问题

解决COS、FileUpload上传文件时中文文件名乱码问题的更多相关文章

  1. 使用FCKeditor编辑器上传文件时中文文件名乱码

    修改:editor\filemanager\browser\default\frmupload.html 文件的编码改为UTF-8 实在不行:fckeditor/editor/filemanager/ ...

  2. spring clound gateway 上传文件,中文文件名乱码解决办法

    先说解决办法吧: 有三种解决办法 1 ,zuul官方给出了解决方案,使用/zuul开头的请求可以避免中文名乱码以及支持大文件上传 域名是 testgateway.com  接口是  api/image ...

  3. 解决asp.net上传文件时文件太大导致的错误

    即使在web.config中添加了节点和设置依然是不行的,还是报文件太大的错误, <httpModules>       <add name="UploadHttpModu ...

  4. fileupload上传文件时带参数

    var userID = ""; $('#picture').fileupload({ url: "http://localhost:35708/Handler/File ...

  5. struts使用html:file上传文件的时候文件名乱码解决

    <body> <html:form action="/jwid/struts1x/15.3/form/upload.do?action=upload" encty ...

  6. FileUpload上传文件无法获取文件名

    原因:将FileUpload控件放到了UpdatePannel控件中了 解决办法:将FileUpload控件位置移动到UpdatePannel控件外面

  7. 上传文件时$_FILES为空的解决方法

    上传视频的时候打印$_FILES为空,小的文件就没问题,后来发现是因为传的文件太大, 出现这个问题的原因主要有两个:表单原因或者php设置原因: 1,表单类型: 上传文件的表单编码类型必须设置成 en ...

  8. ASP.NET页面上传文件时提示文件大小超过请求解决方法

    在webconfig中节点 <system.web> </system.web> 下加入以下代码:maxRequestLength为限制上传文件大小,executionTime ...

  9. FTP主动模式上传文件时返回"ftp: accept: Resource temporarily unavailable"

    FTP主动模式上传文件时返回 Passive mode off ftp: accept: Resource temporarily unavailable 这个问题要从ftp的2种模式说起 PORT ...

随机推荐

  1. vs2012 condition_variable notify_one 崩溃

    vs2012项目中用到 condition_variable系统方法,程序运行过程过程中偶尔出现notify_one崩溃, 程序运行的服务器系统版本是windows server 2008 R2 SP ...

  2. 【转】利用TCMalloc优化Nginx的性能

    From: http://www.linuxidc.com/Linux/2013-04/83197.html TCMalloc的全称是 Thread-Caching Malloc,是谷歌开发的开源工具 ...

  3. 《我是一只it小小鸟》

    <我是一只it小小鸟>一书虽然内容不多,但里面的故事极其励志,耐人寻味.虽然只花不多的时间阅读这本书,它给我的影响将会伴随一生. 他们是来自不同的院校,或本科,或半路转行:工作在不同的场所 ...

  4. 中断(interrupt)、异常(exception)、陷入(trap)

    原文出处:http://lhk518.blog.163.com/blog/static/3153998320084263554749/ 中断:是为了设备与CPU之间的通信.典型的有如服务请求,任务完成 ...

  5. 【BZOJ】【1041】【HAOI2008】圆周上的点

    数学 orz hzwer 完全不会做…… 很纠结啊,如果将来再遇到这种题,还是很难下手啊…… 引用题解: [分析]: 样例图示: 首先,最暴力的算法显而易见:枚举x轴上的每个点,带入圆的方程,检查是否 ...

  6. 引擎设计跟踪(九.14.2h) 开发计划

    以后的开发计划: 完善game runtime code, 跑简单的demo目前只有编辑器的运行流程, 没有游戏/demo流程, 图形的测试主要在编辑器上测试, 现在需要测试android系统的图形, ...

  7. Nginx使用webbench进行压力测试(转载)

    在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...

  8. BZOJ 1029 [JSOI2007] 建筑抢修(贪心)

    1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 2285  Solved: 1004[Submit][Statu ...

  9. Topcoder srm 632 div2

    脑洞太大,简单东西就是想复杂,活该一直DIV2; A:水,基本判断A[I]<=A[I-1],ANS++; B:不知道别人怎么做的,我的是100*N*N;没办法想的太多了,忘记是连续的数列 我们枚 ...

  10. 高达渐出现效果Shader

    原地址: http://liweizhaolili.blog.163.com/blog/static/1623074420140591864/ 最近在玩游戏<高达破坏者>,里面的高达出现的 ...