1. 打包下载图片(文件)

·ReportFile 实体类 随便你自己怎么写了 
·reportFile.getFilePath()  文件存放路径
/*** @param id*/
@ResponseBody
@RequestMapping("downloadPicture")
public void downloadPicture(String id, HttpServletResponse response) throws Exception {String name = UUID.randomUUID().toString().replaceAll("-", "");if (StringUtils.isNotBlank(id)) {ReportData report = reportDataService.getReport(id); List<ReportFile> reportFiles = report.getReportFiles(); //获得好多文件transToZip(name, reportFiles, response);}}
/**  * @param userPicturesList  * @param response  * @throws IOException  */  public static void transToZip(String name, List<ReportFile> userPicturesList, HttpServletResponse response) throws IOException { byte[] buffer = new byte[1024]; // file = new File(file.getAbsolutePath() + File.separator + fileName + ".zip"); // // 生成的ZIP文件名为Demo.zip // // String strZipName = "D:\\Demo.zip"; // ZipOutputStream out = new ZipOutputStream(new FileOutputStream(file));  String downloadFilename = name + ".zip";//文件的名称  downloadFilename = URLEncoder.encode(downloadFilename, "UTF-8");//转换中文否则可能会产生乱码  response.setContentType("application/octet-stream");// 指明response的返回对象是文件流  response.setHeader("Content-Disposition", "attachment;filename=" + downloadFilename);// 设置在下载框默认显示的文件名  ZipOutputStream out = new ZipOutputStream(response.getOutputStream()); // 需要同时下载的多个照片文件  List<File> manyFiles = new ArrayList<File>(); for (ReportFile reportFile : userPicturesList) { manyFiles.add(new File(reportFile.getFilePath())); }
        // 将文件进行压缩for (int i = 0; i < manyFiles.size(); i++) {FileInputStream fis = new FileInputStream(manyFiles.get(i));out.putNextEntry(new ZipEntry(manyFiles.get(i).getName()));int len;// 读入需要下载的文件的内容,打包到zip文件while ((len = fis.read(buffer)) > 0) {out.write(buffer, 0, len);}out.closeEntry();fis.close();}out.close();System.out.println("生成照片压缩文件成功");}

打包下载图片(文件)相关推荐

  1. 场景实践:使用函数计算打包下载OSS文件

    体验简介 本场景将提供一台配置了Centos 7.7版本的ECS实例(云服务器)和对象存储OSS实例. 通过本教程的操作,您可以基于已有的环境使用函数计算将对象存储OSS上多个文件(Object)打包 ...

  2. JSZip + FileSaver 实现Vue打包下载图片

    1. 版本 "file-saver": "^2.0.5", "jszip": "^3.6.0" 2. 实现 import ...

  3. 通过Web Services上传和下载图片文件

    通过Web Services上传和下载图片文件 随着Internet技术的发展和跨平台需求的日益增加,Web Services的应用越来越广,我们不但需要通过Web Services传递字符串信息,而 ...

  4. 根据URL下载单个图片与批量打包下载图片(文件同理)

    根据url下载图片看起来很简单,做起来还是有点曲折的 首先,直接file_put_content()的话可以下载图片但不知道图片保存在什么位置,所以必须要调用浏览器下载,使用header头. func ...

  5. 通过jS打包下载图片

    <script src="~/Areas/House/Content/js/HouseInfo/jszip.js"></script> <script ...

  6. 使用函数计算打包下载OSS文件

    简介:打包下载OSS上存储的多个文件是一个常见的需求,例如将 OSS 上的一个目录打包下载.这样可以节省网络传输的数据,达到减少费用和下载时间的效果.使用函数计算可以很方便地实现这个需求. 需求 打包 ...

  7. PHP打包下载多文件

    PHP5.2+内置支持多文件打包,使用ZipArchive类. 要实现多文件打包下载,分两步,第一步是使用ZipArchive压缩多个文件,然后使用header指令生成下载操作. 第1步为了递归添加目 ...

  8. 实战:JS批量打包下载图片--(zip压缩)

    1.下载两个插件 npm i -s jszip file-saver 2.封装函数如下: // 在JS文件中引入这两个插件 import JSZip from 'jszip' import FileS ...

  9. 前端批量打包下载图片

    1.批量下载图片(jquery)  <!DOCTYPE html> <html><head><meta charset="utf-8" / ...

最新文章

  1. 关于verilog中的signed类型
  2. 学习编程的基础四大件
  3. Redis快照(Snapshot)特点
  4. “新基建”沙龙(一)精华回顾 | 5G与工业互联网的发展机遇与挑战
  5. java boolean转int,java如何将int转换为boolean
  6. git fork clone 区别_Working with Git | Git 与 GitHub
  7. 蓝宝石会升级bios吗_别再听别人忽悠!升级BIOS的三大误区
  8. SylixOS下移植glib时clock_gettime函数分析
  9. python做前端mongodb_python-mongodb基本操作都在这了
  10. 基于墨刀实现的原型系统:多啦阅读
  11. bigint hive java类型_【干货】Hive常用函数大全
  12. Java项目实战--健康管理系统设计实现【Springboot+mybatis+layui等实现】
  13. 【MS SQL Server】SQL Server2005下载地址
  14. 国自然的技术路线图?用PPT试试
  15. git提交中target等目录忽略与取消忽略
  16. markdown语法测试
  17. 项目需求到设计的理解
  18. 一个简单的loding
  19. Spring boot(web 组件,ORM 操作 MySQL,接口架构风格—RESTful,集成 Redis,集成 Dubbo,打包)
  20. 【MATLAB教程案例27】基于matlab的图像配准算法的仿真与分析——sift,surf,kaze等

热门文章

  1. Linux 内核学习知识:浅析 offsetof 宏以及内核开发学习的所思所想(内核开发人员必读)
  2. 基于Vue3和element-plus实现一个完整的登录功能
  3. SWIProlog之动物识别
  4. Rust 1.7.0 语法基础 标识符(ident)和分隔符的约束
  5. read the pragmatic programmer -- chapter one
  6. 将Rosbag中compressed图像转换成raw类型
  7. php实现拖拽排序,H5实现拖拽排序的代码
  8. csgo跳跃只能改一个键位吗_csgo跳扔投掷物指令设置方法 怎么绑定鼠标跳扔投掷物...
  9. LTE总结1.用户连接与上行调度和下行调度
  10. 火狐浏览器打开GitHUb时,说“建立安全连接失败”,解决方案