菜鸡一匹 2020-04-16 09:37 采纳率: 0%
浏览 165
已结题

继续多个SVG格式文件压缩下载

将多个SVG压缩并下载出来,记录

(controller层)代码:

 //List<File> srcfile文件集合
        byte[] buf = new byte[1024];
        // 获取输出流
        ByteArrayOutputStream bos = new ByteArrayOutputStream();

        try {
            // ZipOutputStream类:完成文件或文件夹的压缩
            ZipOutputStream out = new ZipOutputStream(bos);
            for (int i = 0; i < srcfile.size(); i++) {
                // 此处可用任意其他输入流将FileInputStream取代,outputStream为其他步骤的输出流
                FileInputStream in = new FileInputStream(srcfile.get(i));
                // 给列表中的文件单独命名
                out.putNextEntry(new ZipEntry(srcfile.get(i).getName()));
                int len;
                while ((len = in.read(buf)) > 0) {
                    out.write(buf, 0, len);
                }
                out.closeEntry();
                in.close();
                //删除临时文件
                MultipartFileToFile.delteTempFile(srcfile.get(i));
            }
            out.close();
            bos.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        // 设置http响应头
        HttpHeaders header = new HttpHeaders();
        header.add("Content-Disposition", "attachment;filename=" + "在线翻译压缩包.zip");
        return new ResponseEntity<byte[]>(bos.toByteArray(), header, HttpStatus.CREATED);
  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月21日

悬赏问题

  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 深信服vpn-2050这台设备如何配置才能成功联网?
  • ¥15 Arduino的wifi连接,如何关闭低功耗模式?
  • ¥15 Android studio 无法定位adb是什么问题?
  • ¥15 angular项目错误
  • ¥20 需要帮我远程操控一下,运行一下我的那个代码,我觉得我无能为力了
  • ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
  • ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
  • ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
  • ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)