[英]Best way to read Spring Multipartfile line by line in Java 8
[英]Java spring: best way to convert a File to a MultipartFile
我創建了一個文件(如下),但我想將它轉換為 MultipartFile,我該怎么做?
我已經嘗試過這段代碼,但沒有成功:
File file = new File("text.txt");
FileInputStream input = new FileInputStream(file);
MultipartFile multipartFile = new MockMultipartFile("file", file.getName(), "text/plain", IOUtils.toByteArray(input));
這會導致錯誤:
File file = new File("text.txt");
DiskFileItem fileItem = new DiskFileItem("file", "text/plain", false, file.getName(), (int) file.length() , file.getParentFile());
fileItem.getOutputStream();
MultipartFile multipartFile = new CommonsMultipartFile(fileItem);
錯誤
CommonsMultipartFile 中的 CommonsMultipartFile (org.apache.commons.fileupload.FileItem) 不能應用於 (org.apache.tomcat.util.http.fileupload.disk.DiskFileItem)
謝謝
InputStream stream = new FileInputStream(file)
multipartFileToSend = new MockMultipartFile("file", file.getName(), MediaType.TEXT_HTML_VALUE, stream);
嘗試這個
我提出了這種允許將文件轉換為 MultipartFile 的方法:
public static MultipartFile buildMultipartFile(@NonNull final File file,
@NonNull final String multipartFileParameterName) throws IOException {
MultipartFile multipartFile = null;
try (final FileInputStream input = new FileInputStream(file)) {
multipartFile = new MockMultipartFile(
multipartFileParameterName,
file.getName(),
Files.probeContentType(file.toPath()),
IOUtils.toByteArray(input));
}
return multipartFile;
}
就我而言,效果很好,謝謝 Parthiban Manickam !!
InputStream stream = new FileInputStream(zipFile);
MockMultipartFile multipartFileToSend = new MockMultipartFile("file", zipFile.getName(),
String.valueOf(MediaType.MULTIPART_FORM_DATA), stream);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.