可以看到MultipartFile是个接口
转成MultipartFile格式则需要转成实现MultipartFile接口的实现类即可,如下选择转成用MockMultipartFile实现
首先:需要先引入依赖包
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.3.9</version>
</dependency>
进入MockMultipartFile可以看到其有四种构造方法,如下:
// 第一种方式:根据文件名称、文件内容转换
// 其中fileName为对方收的文件名
String fileName = "test.txt";
String fileContent = "test content";
MultipartFile multipartFile = new MockMultipartFile(fileName, fileContent.getBytes(StandardCharsets.UTF_8));
// 第二种方式:文件名称、输入流内容
// 这种方式需要文件的路径
// 其中fileName为对方收的文件名
String fileName = "test.txt";
String filePath = "D:/test.txt";
MultipartFile multipartFile = new MockMultipartFile(fileName, new FileInputStream(filePath));
// 这种和上面一样
File file = new File("filePath");
MockMultipartFile(fileName, new FileInputStream(file));
// 第三种方式:不怎么常用
String fileName = "test.txt";
String originalFilename = "myTest.txt";
String contentType = "txt";
String fileContent = "test content";
MultipartFile multipartFile = new MockMultipartFile(
fileName,
originalFilename,
contentType,
fileContent.getBytes(StandardCharsets.UTF_8));
// 第四种:不怎么常用
String fileName = "test.txt";
String originalFilename = "myTest.txt";
String contentType = "txt";
String filePath = "D:/myTest.txt";
MultipartFile multipartFile = new MockMultipartFile(
fileName,
originalFilename,
contentType,
new FileInputStream(filePath));