java File 类型 转换成 MultipartFile
MutipartFile是spring里面定义的接口,它封装了用户在上传图片时所包含的所有信息,但是有些时候我们要将file转换成MutipartFile,才能在保持原有代码逻辑的情况下方便代码的调整,但是file不能直接转换成MutipartFile,网上方法较多,这里采用spring-mock实现。
1.引入mock maven
<!-- File转换成MultipartFile(MutipartFile是spring里面定义的接口,它封装了用户在上传图片时所包含的所有信息,但是有些时候我们要将file转换成MutipartFile,才能在保持原有代码逻辑的情况下方便代码的调整) -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-mock</artifactId>
<version>2.0.8</version>
</dependency>
2.使用
public static void main(String[] args) throws IOException {
String strUrl = "C:\\Users\\84916\\Desktop\\store_data_test(1).xlsx";
File file = new File(strUrl);
InputStream inputStream = new FileInputStream(file);
//mock---file转multipartfile(测试使用)
MultipartFile multipartFile = new MockMultipartFile("file", file.getName(), "text/plain", IOUtils.toByteArray(inputStream));
List<String[]> excelData = ExcelData.getExcelData(multipartFile);
System.out.println(excelData);
}
之前看到其他人这样使用,但是我这里实际应用需要判断文件类型,所以会报错。
MultipartFile multipartFile = new MockMultipartFile(file.getName(), inputStream);