在Java中给上传的文件重命名,可以通过以下步骤实现:
- 获取上传文件的原始文件名。
String originalFileName = file.getOriginalFilename();
- 生成新的文件名。可以使用UUID类来生成一个唯一的文件名,也可以根据需要自己定义新的文件名规则。
String newFileName = UUID.randomUUID().toString() + originalFileName.substring(originalFileName.lastIndexOf("."));
- 创建新的文件对象,指定新的文件名。
File newFile = new File("新文件路径" + newFileName);
- 将上传的文件内容复制到新文件中。可以使用流的方式进行复制。
file.transferTo(newFile);
完整的代码示例:
@PostMapping("/upload") public String uploadFile(@RequestParam("file") MultipartFile file) { if (!file.isEmpty()) { try { String originalFileName = file.getOriginalFilename(); String newFileName = UUID.randomUUID().toString() + originalFileName.substring(originalFileName.lastIndexOf(".")); File newFile = new File("新文件路径" + newFileName); file.transferTo(newFile); return "文件上传成功"; } catch (IOException e) { e.printStackTrace(); return "文件上传失败"; } } else { return "文件为空"; } }
以上代码中的"新文件路径"需要根据实际情况进行修改,指定新文件保存的路径。
评论