如何更改 MultipartFile 的原始文件名

Le *_*ang 6 java multipartform-data

我在服务器端有一个 MultipartFile 文件。我想更改此文件的原始文件名,但该类仅支持 getOriginalFilename()。

谁能帮我这个?PS:是上传的图片文件。

非常感谢。

Dav*_*czo 8

您可以使用 MockMultipartFile 类更改名称。例如,向多部分文件添加时间戳。

MultipartFile multipartFile = new  MockMultipartFile(FilenameUtils.getBaseName(oldMultipartFile.getOriginalFilename()).concat(new SimpleDateFormat("yyyyMMddHHmm").format(new Date())) + "." + FilenameUtils.getExtension(oldMultipartFile.getOriginalFilename()), oldMultipartFile.getInputStream());
Run Code Online (Sandbox Code Playgroud)

然后使用具有新名称的 multipartFile 或者您可以在像这样保存之前重命名文件

  String currentDate = new SimpleDateFormat("yyyyMMddHHmm").format(new Date());

  file.getOriginalFilename().replace(file.getOriginalFilename(), FilenameUtils.getBaseName(file.getOriginalFilename()).concat(currentDate) + "." + FilenameUtils.getExtension(file.getOriginalFilename())).toLowerCase())
Run Code Online (Sandbox Code Playgroud)