欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

文件上传至将File转换成MultiPartFile

发布时间:2025/3/15 编程问答 28 豆豆
生活随笔 收集整理的这篇文章主要介绍了 文件上传至将File转换成MultiPartFile 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

在文件上传业务上需要将文件上传至将File转换成MultiPartFile的时候,我搜索得到采用MockMultipartFile这个类可以轻松的转换。
但是,当我准备使用的时候,坑出现了。它是spring-test下的包。
这个类主要是在test中请求出现的。
打包之后没法使用。因此,MockMultipartFile并不适用于我这种情况。
于是,我又找到了CommonsMultipartFile这个类,可以满足业务需要,但是操作比较麻烦。
下面是具体的使用方法:

1.首先获取FileItem对象: public FileItem createFileItem(String filePath) {FileItemFactory factory = new DiskFileItemFactory(16, null);String textFieldName = "textField";int num = filePath.lastIndexOf(".");String extFile = filePath.substring(num);FileItem item = factory.createItem(textFieldName, "text/plain", true, "MyFileName");File newfile = new File(filePath);int bytesRead = 0;byte[] buffer = new byte[8192];try {FileInputStream fis = new FileInputStream(newfile);OutputStream os = item.getOutputStream();while ((bytesRead = fis.read(buffer, 0, 8192)) != -1) {os.write(buffer, 0, bytesRead);}os.close();fis.close();} catch (IOException e) {e.printStackTrace();}return item; }

2.通过FileItem对象可以轻松获得CommonsMultipartFile对象,转换成MultiPartFile对象即可使用。

MultipartFile mfile = new CommonsMultipartFile(fileItem); 创作挑战赛新人创作奖励来咯,坚持创作打卡瓜分现金大奖

总结

以上是生活随笔为你收集整理的文件上传至将File转换成MultiPartFile的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。