文件初始化
DiskFileItemFactoryfactory = new DiskFileItemFactory();
设置最大文件蛳
factory.setSizeThreshold( 200 * 1024 * 1024 );
//设置临时文件夹
FiletempFile = new File( " d:/ " );
factory.setRepository(tempFile);
factory.setSizeThreshold( 200 * 1024 * 1024 );
//设置临时文件夹
FiletempFile = new File( " d:/ " );
factory.setRepository(tempFile);
建文件项列表
ServletFileUploadupload = new ServletFileUpload(factory);
ServletFileUploadupload = new ServletFileUpload(factory);
//分析构成文件列表,把表单每个项都列表了,要进行判断
Listitems = upload.parseRequest(request);
Iteratoriter = items.iterator();
Listitems = upload.parseRequest(request);
Iteratoriter = items.iterator();
对列表项进行处理
while (iter.hasNext()) ... {
FileItemitem=(FileItem)iter.next();
while (iter.hasNext()) ... {
FileItemitem=(FileItem)iter.next();
//当是不是一个form项时就是一个文件项
if(!item.isFormField())...{
if(!item.isFormField())...{
//获取文件名
Stringfile=item.getName();
Stringfile=item.getName();
//对文件名进行分析
intpos=file.lastIndexOf(File.separator);
if(pos>0)...{
file=file.substring(pos+1);
}
Fileo=newFile(request.getRealPath("/upload")+File.separator+file);
intpos=file.lastIndexOf(File.separator);
if(pos>0)...{
file=file.substring(pos+1);
}
Fileo=newFile(request.getRealPath("/upload")+File.separator+file);
//写入文件之中
item.write(o);
}
}
} catch (IOExceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
catch (FileUploadExceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
catch (Exceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
item.write(o);
}
}
} catch (IOExceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
catch (FileUploadExceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
catch (Exceptione) ... {
//TODOAuto-generatedcatchblock
e.printStackTrace();
}