一尘不染

将文件转换为MultiPartFile

spring

有什么方法可以将File对象转换为MultiPartFile?这样我就可以将该对象发送到接受MultiPartFile接口对象的方法?

File myFile = new File("/path/to/the/file.txt")

MultiPartFile ....?

def (MultiPartFile file) {
  def is = new BufferedInputStream(file.getInputStream())
  //do something interesting with the stream
}

阅读 856

收藏
2020-04-16

共1个答案

一尘不染

存在MockMultipartFile为此目的。如你的代码段中所示,如果文件路径已知,则以下代码对我有用。

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import org.springframework.mock.web.MockMultipartFile;

Path path = Paths.get("/path/to/the/file.txt");
String name = "file.txt";
String originalFileName = "file.txt";
String contentType = "text/plain";
byte[] content = null;
try {
    content = Files.readAllBytes(path);
} catch (final IOException e) {
}
MultipartFile result = new MockMultipartFile(name,
                     originalFileName, contentType, content);
2020-04-16