Java之List转MultipartFile

最近在项目开发中有个需求:

将之前旧的配置转换为excel文件,再上传至云存储,获取该链接并支持下载。

工具:

  • Hutool

步骤:

  1. 先处理好需要转换的列表
  2. 定义 FileItem
  3. 从该item 获取输出流(OutputStream)。通过hutool工具将列表写入item的输出流。
  4. 初始化 CommonsMultipartFilefileItem 属性,设置该item
  5. 完成 ListMultipartFile

代码实现如下:

private String uploadFile(String fileName, List<DataDto> list) {

    DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory(16, null);
    FileItem item = diskFileItemFactory.createItem(
        fileName,
        "application/octet-stream;charset=utf-8",
        true,
        fileName);

    OutputStream outputStream = item.getOutputStream();
    ExcelWriter writer = ExcelUtil.getWriter();
    writer.write(list, true);
    writer.flush(outputStream);

    MultipartFile multipartFile = new CommonsMultipartFile(item);

    //上传文件
}
  • ExcelUtil 使用的是 Hutool 提供的excel工具类

版权声明:本文为mikelv01原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。