Я хочу указать имя файла с инкрементным номером, если файл существует, который не удаляет мой старый файл. Пожалуйста, помогите мне. Благодаря!Как добавить инкрементный номер в имя файла, если файл существует?
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 Но моя вторая загрузка привела к: Язык программирования Reflection15897278330376654158
Что является причиной этого?
Довольно основной и, вероятно, наивная реализация будет переименовать новый файл с последней версией этого (2, 3, 4, и) и есть еще один файл (или таблицы в базе данных), где у вас есть последняя версия для файла. Тем не менее, вместо того, чтобы изобретать колесо, я бы рекомендовал использовать [Content Management System] (http://en.wikipedia.org/wiki/Content_management_system) для управления версиями файлов и всей этой трудной и неприятной работы. –
Но сэр невозможно, если я могу добавить символ или дату или инкрементный номер в префикс файла, чтобы сделать его уникальным? Я хочу реализовать обновление файлов, если файл существует. Как вы говорите, есть ли api системы управления контентом в java? –
Доступ к ссылке в Википедии, которую я предоставил в своем комментарии (это не значит, чтобы мой комментарий выглядел хорошо), вы найдете [список рамок системы управления контентом] (http://en.wikipedia.org/wiki/List_of_content_management_frameworks), а некоторые из них - на Java. Я работал с CMS в прошлом, чтобы справиться с этой работой, но это будет зависеть от ваших потребностей, чтобы найти лучшее для вас. –