在将其保存到文件系统之前,我想在其中重命名该代码。我在堆栈溢出中在这里尝试了其他问题,但不适用于我。希望您能帮我这是我的代码。

@PostMapping("/api/file/upload")
public @ResponseBody String uploadMultipartFile(@RequestParam("uploadfile") MultipartFile file) {
        try {
            fileStorage.store(file);
            return "File uploaded successfully! -> filename = " + file.getOriginalFilename();
        } catch (Exception e) {
            return "Error -> message = " + e.getMessage();
        }
}


这是我的商店功能:

@Override
public void store(MultipartFile file){
    try {
        Files.copy(file.getInputStream(), this.rootLocation.resolve(file.getOriginalFilename()));
    } catch (Exception e) {
        throw new RuntimeException("FAIL2! -> message2 = " + e.getMessage());
    }
}


我尝试重命名原始文件,但是它不起作用。

希望你能帮助我。非常感谢!!!

最佳答案

以下是经过修改的工作片段:

@PostMapping(value = "/api/file/upload", headers = {"content-type=multipart/*"})
public @ResponseBody String uploadMultipartFile(@RequestParam("uploadfile") MultipartFile file) {
    Path TO = Paths.get("/Users/myusername/Desktop/newfileName");
    try {
        try {
            Files.copy(file.getInputStream(), TO);
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException("FAIL2! -> message2 = " + e.getMessage());
        }
        return "File uploaded successfully! -> filename = " + file.getOriginalFilename();
    } catch (Exception e) {
        e.printStackTrace();
        return "Error -> message = " + e.getMessage();
    }
}


输出画面:

java - 重命名Multipart文件的原始文件名-LMLPHP

关于java - 重命名Multipart文件的原始文件名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54192937/

10-12 04:42
查看更多