在使用commons-fileupload.jar包进行文件的上传时的几个问题.
是使用DiskFileUpload好还是使用ServletFileupload好?
这两个类有什么区别?
另外用ServletFileupload上传文件时,如何限制文件的大小,限制上传文件的类型?
如果要对上传文件进行重命名,怎么重命名?
看了那些文档,但还不是很明白,希望高手多指点....
问题补充:
现在最主要的问题是如何对上传的文件进行重命名?
ServletFileUpload ,之前的版本好像是DiskFileUpload,这个已经被Deprecated了,
[code="java"]DiskFileItemFactory factory=new DiskFileItemFactory();
ServletFileUpload fu=new ServletFileUpload(factory);
//上传最大200MB
fu.setSizeMax(200*1024*1024);
//fu.setHeaderEncoding("UTF-8");
factory.setSizeThreshold(1024*1024);
//超过内存阀值就保存到temp目录,这里设为系统缓存路径
factory.setRepository(new File(System.getProperty("java.io.tmpdir")));
try {
List fileItem = fu.parseRequest(request);
for(Iterator iter=fileItem.iterator();iter.hasNext();){
FileItem it=(FileItem)iter.next();
if(!it.isFormField()){
String fileName=it.getName();
System.out.println(fileName);
File f=new File(folder+fileName);
it.write(f);
}else{
if(it.getFieldName().equals("folder"))
folder=it.getString();
}
}
} catch (FileUploadException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
//e.printStackTrace();
}[/code]