如果表单使用enctype="multipart/form-data"方式提交,
那么一般的request.getParameter(arg0)方法是无法获取Form参数的,
思考ing,
发现使用apache的common-fileupload组件可以获取,
- DiskFileUpload upload = new DiskFileUpload();
-
upload.setHeaderEncoding("UTF-8");
-
try {
- List items = upload.parseRequest(request);
- Iterator iter = items.iterator();
-
while (iter.hasNext()) {
- FileItem item = (FileItem) iter.next();
-
if (item.isFormField()) {
-
- item.getFieldName();
-
-
item.getString("UTF-8");
- }
- }
-
}catch (Exception ex) {
- }
String fieldValue = "";
DiskFileUpload uploadParm = new DiskFileUpload();
uploadParm.setHeaderEncoding("UTF-8");
try {
List items = uploadParm.parseRequest(request);
Iterator iterator = items.iterator();
while (iterator.hasNext()) {
FileItem fileItem = (FileItem) iterator.next();
if (fileItem.isFormField()) {
//参数名
if("fileRowId".equals(fileItem.getFieldName())){
//参数值
fieldValue = fileItem.getString("UTF-8");
break;
}
}
}
}catch (Exception ex) {
}
注意,如果不能使用item.getString(),然后自行转换编码,
这样会出现乱码的,
new String(item.getString().getBytes(),"UTF-8")
这样会出现乱码
试了很多方法,这是目前发现唯一能解决乱码问题的方法
相关推荐
解决当FORM的ENCTYPE="multipart/form-data" 时request.getParameter()获取不到值的方法 ?
解决上传文件enctype= multipart/form-data 时无法传递其他参数的问题,以及项目全局编码问题。用的插件是commons io + commons fileupload
servlet上传 enctype="multipart/form-data" servlet上传 enctype="multipart/form-data
解决当FORM的ENCTYPE="multipart/form-data" 时action方法或者控制层用request.getParameter()获取不到值的方法 ?
<form method="post" ENCTYPE="multipart/form-data"> file类型职务的普通参数传递到后台问题解决
我们都知道要让form能提交文件,需要在form上指定enctype=multipart/form-data的attribute,这样才能上传文件,关于enctype的文章很多,就不再做解释。 问题是因为使用了MVC的Html.BeginForm()来输出表单代码,默认...
解决java enctype multipart form-data文件上传传值问题 不使用jspsmartupload组件 可以轻轻松松 解决传值问题
本文介绍了Node Js 使用KOA处理form-data格式传输过来的文件,分享给大家。...form表单【注意:enctype=”multipart/form-data”】上传文件时,首先会将文件上传到你本机的temp目录,然后执行move_upload_file
阿贾克斯形式这是一个js事件监听器,可让您以最简单的方式使用ajax提交任何表单。 只需将类“ .ajax_form”添加到您的表单中,瞧,您的表单将开始... 只需将常规enctype =“ multipart / form-data”包含在表单元素中
multipart/form-data : 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。 text/plain : 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。 补充 form的enctype属性为编码方式,常用有...
form id="form1" runat="server" action="UserManageHandler.ashx" method="post" enctype="multipart/form-data"> 名称: <input type="text" name="uname" class="uname" /> 邮件: <input ...
注意:Multer将不处理任何非多multipart/form-data ( multipart/form-data )。 版本说明 fastify-multer 2.xx版本支持Fastify> = 3.0.0。 对于Fastify <3.0.0,请使用fastify-multer 1.xx版本 安装 $ npm ...
本文实例讲述了Django框架文件上传与自定义图片上传路径、上传文件名操作。分享给大家供大家参考,具体如下: ...method=post enctype=multipart/form-data> 文件数据存储在request.FILES属性中 文件上传必须使用P
跨域 跨域有三个条件,满足任何一个条件就是跨域 1:服务器端口不一致 2:协议不一致 3:域名不一致 解决方案: 1.jsonp ...form action=/ method=post enctype=multipart/form-data> <in
为了能上传文件,必须将表单的method设置为POST,并将enctype设置为multipart/form-data。只有在这样的情况下,浏览器才会把用户选择的文件以二进制数据发送给服务器。 一旦设置了enctype为multipart/form-data,...
为了能上传文件,必须将表单的method设置为POST,并将enctype设置为multipart/form-data。只有在这样的情况下,浏览器才会把用户选择的文件以二进制数据发送给服务器。 一旦设置了enctype为multipart/form-data,...
struts2文件上传与下载, <s:form name="Myform" action="/fileManage/upload" method="post" enctype="multipart/form-data" theme="simple" > <s:fielderror></s:fielderror> <s:file name="image" label=...
<form action="fileup.do" method="post" enctype="multipart/form-data" > 文件:<input type="file" name="filedata"/> 2.struts-config.xml文件配置 <form-beans> <form-bean name="actionForm" ...
1. 前台jsp中,我使用的是 form post 请求,设置了 enctype=”multipart/form-data” ,页面编码格式都是utf-8 2. 后台中,我使用的是commons-fileUpload组件,ServletFileUpload 解析form表单和文件, 3. 设置 ...