java文件上传
2014-06-05 16:04
106 查看
commons.fileupload
1.3版
package util;
import java.io.File;
import java.util.Calendar;
import java.util.List;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import
org.apache.commons.fileupload.disk.DiskFileItemFactory;
import
org.apache.commons.fileupload.servlet.ServletFileUpload;
public class Upload extends HttpServlet{
public static String
doFileUpload(HttpServletRequest
request,
HttpServletResponse
response){
//创建文件存放目录
Calendar date = Calendar.getInstance();
int year =
date.get(Calendar.YEAR);
int mm =
date.get(Calendar.MONTH)+1;
String dir =
year + "-" + mm; // 目录
String
uploadFolder = request.getRealPath("zmtupian/" + dir + "/");
System.out.println("================"+uploadFolder);
File folder =
new File(uploadFolder);
folder.mkdirs();
DiskFileItemFactory
f = new DiskFileItemFactory();//磁盘对象
f.setRepository(new
File("f:/a")); //设置临时目录
f.setSizeThreshold(1024*8);
//8k的缓冲区,文件大于8K则保存到临时目录
ServletFileUpload
upload = new ServletFileUpload(f);//声明解析request的对象
upload.setHeaderEncoding("UTF-8");
//处理文件名中文
upload.setFileSizeMax(1024
* 1024 * 5);// 设置每个文件最大为5M
upload.setSizeMax(1024
* 1024 * 10);// 一共最多能上传10M
try {
List list =
upload.parseRequest(request);// 解析
System.out.println("****************list**8===="+list.size());
for (FileItem
ff : list) {
if
(ff.isFormField()) {
String ds =
ff.getString("UTF-8");//处理中文
System.err.println("说明是:"
+ ds);
} else
{
String ss =
ff.getName();
ss =
ss.substring(ss.lastIndexOf("\\") + 1);//解析文件名
ff.write(new
File(uploadFolder, ss));
}
}
} catch
(Exception e) {
e.printStackTrace();
}
return
uploadFolder;
}
}
相关文章推荐
- 彻底搞定java文件上传
- 彻底搞定java文件上传
- java上传多个文件
- java上传文件
- java web 上传保存xml文件
- java做的比较完善的FTP连接上传下载文件
- Java文件上传下载 源码
- java文件上传和下载(原创,根据RFC1867分析得到)
- FCKeditor 多用户文件上传Java版
- 彻底搞定java文件上传
- [ZT]彻底搞定java文件上传zz
- 带进度条的文件上传(java+ajax,附源码)【原创】
- java中如何实现文件打包上传以及自动解压
- java文件上传资料 ctrl C + ctrl V again sorry everybody~
- 带进度条的文件上传(java+ajax,附源码
- 彻底搞定java文件上传(转)
- VB.NET客户端调用Axis的Java Web Service实现文件上传
- java文件上传原理
- 带进度条的文件上传(java+ajax,附源码)
- 自己编写JAVA环境下的文件上传组件