如果文件存在,如何在文件名中添加增量编号?

时间:2013-07-02 15:35:46

标签: java servlets file-upload

如果存在不删除旧文件的文件,我想用增量编号对文件名进行版本控制。请帮我。谢谢!

List items = upload.parseRequest(request);
FileItem file = (FileItem)items.get(1);
String fileName = file.getName();
String filePath = uploadPath + File.separator + fileName;
File storeFile = new File(filePath);
if(storeFile.exists()){
    **/*Do logic to change the filename of the existed file*/**
}else{
   System.out.println(filePath);
   file.write(storeFile);
}


@BalusC this what I do sir:

String prefix = FilenameUtils.getBaseName(fileName); 
String suffix = FilenameUtils.getExtension(fileName);
File newfileName = File.createTempFile(prefix + "-", "." + suffix, new File(uploadPath));
file.write(newfileName);

我的首次上传结果是:编程语言Reflection.docx 但我的第二次上传导致:编程语言反思15897278330376654158

这是什么原因?

1 个答案:

答案 0 :(得分:-2)

不完全是你要求的,但File.createTempFile可能会有所帮助。它会将一个随机数插入临时文件名,而不是增量编号。

File tempFile = File.createTempFile(fileName, null, new File(uploadPath));