81,092
社区成员
发帖
与我相关
我的任务
分享
DiskFileItemFactory factory = new DiskFileItemFactory();
// 设置内存缓冲区,超过后写入临时文件
factory.setSizeThreshold(1024*1024);
// 设置临时文件存储位置
String tempPath = "d:/upload/temp";
File tp = new File(tempPath);
if(!tp.exists())
tp.mkdirs();
factory.setRepository(tp);
ServletFileUpload upload = new ServletFileUpload(factory);
// 设置单个文件的最大上传值
upload.setFileSizeMax(1000*1024*1024);
// 设置整个request的最大值
upload.setSizeMax(1000*1024*1024);
upload.setHeaderEncoding("UTF-8");
FileItem item = null;
try {
List<?> items = upload.parseRequest(request);
//设置文件存储位置
String filePath = "d:/upload/file";
File fp = new File(filePath);
if(!fp.exists())
fp.mkdirs();
String fileName = null;
for (int i = 0 ;i < items.size(); i++){
item = (FileItem) items.get(i);
fileName = filePath + File.separator + item.getName();
// 保存文件
if (!item.isFormField() && item.getName().length() > 0) {
item.write(new File(fileName));
}
}
} catch (FileUploadException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}