/**
* 可用HTTP地址获取图片二进制 输出
*/
@RequestMapping(value = "/test")@ResponseBodypublic void test(HttpServletRequest request, HttpServletResponse response) {String t = "http://127.0.0.1:39090/oa/orderContractFile/202001/553f0479-6e8e-4ce0-a1b5-fbee8bf0fb4b.png";String packageName = "包名";try {@CleanupZipOutputStream out = new ZipOutputStream(response.getOutputStream());int j = 3;for (int i = 0; i < 2; i++) {//获得下载文件完整路径String downloadPath = t;out.putNextEntry(new ZipEntry("测试" + ++j + ".png"));//写入压缩包HttpResponse httpResponse = HttpRequest.get(downloadPath).execute();byte[] bytes = httpResponse.bodyBytes();out.write(bytes);}} catch (Exception e) {e.printStackTrace();}try {response.setCharacterEncoding("UTF-8");response.setContentType("application/zip;charset=utf-8");//获取浏览器名(IE/Chome/firefox)String userAgent = request.getHeader("User-Agent").toUpperCase();if (userAgent.contains("CHROME")) {// 谷歌packageName = new String(packageName.getBytes("UTF-8"), "ISO8859-1");} else if ((userAgent.contains("FIREFOX"))) {// firefox浏览器packageName = new String(packageName.getBytes("UTF-8"), "ISO8859-1"); } else if (userAgent.contains("MSIE")) {// IE浏览器packageName = URLEncoder.encode(packageName, "UTF-8");// IE浏览器
//                packageName = new String(packageName.getBytes("ISO8859-1"), "UTF-8");}else if (userAgent.contains("TRIDENT")){// iepackageName = URLEncoder.encode(packageName, "UTF-8");// IE浏览器}// 空格变 "+" 处理// packageName = URLEncoder.encode(prefix, "utf-8").replace("+","%20");response.setHeader("Content-Disposition", "attachment;filename=Papers.zip");//开始下载@CleanupByteArrayOutputStream os = new ByteArrayOutputStream();@CleanupInputStream is = new DataInputStream(new ByteArrayInputStream(os.toByteArray()));byte[] buff = new byte[1024];int lenn = 0;while ((lenn = is.read(buff)) != -1) {out.write(buff, 0, lenn);}} catch (Exception e) {e.printStackTrace();}}

文件打包zip 下载相关推荐

  1. 通过url地址批量打包zip下载文件

    通过url地址批量打包zip下载文件 controller @ApiOperation("通过下载url批量打包zip下载")@PostMapping("batchDow ...

  2. 大批量图片打包zip下载

    使用插件 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jq ...

  3. linux命令封装sh,shell脚本学习之调用脚本将文件打包zip的方法示例

    前言 本文主要给大家介绍的是关于调用脚本将文件打包zip的相关资料,分享出来供大家参考学习,下面来一起看看详细的介绍: 最近刚刚接触shell脚本,写了一点简单的练手.这里是用python调用脚本执行 ...

  4. 生成pdf文件并打包zip下载

    第一种写法,使用org.apache.tools.zip,具体流程: 1.逐个生成pdf文件 2.打包zip 3.下载 第二种写法,使用java.util.zip,这种写法没成功. 1.使用pdf文件 ...

  5. Asp.Net Web Api 2 实现多文件打包并下载文件示例源码

    前言 最近由于工作和个人事务,站点也好久没更新了,但这并不影响我对.NET的热情.站点的更新工作还是得想办法抽时间来完成的. 提要 今天利用中午的时间来写一篇关于Asp.Net Web Api下载文件 ...

  6. 文件打包,下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件

    总结:                                                          使用PHP下载文件的操作需要给出四个header(),可以参考我的另一篇博文: ...

  7. 【java】 将服务器上文件夹上所有文件打包并下载

    功能要求:教师端要将学生上传的报告按班级进行打包下载. 前台HTML如下: <td align="right"><button class="layui ...

  8. java实现文件打包压缩下载接口(附上可实际运行的代码)

    最近在写项目接口,涉及到文件下载.打包压缩下载,单个文件下载还是比较简单的,多文件下载涉及到打包和压缩知识,之前也没做过,写篇博客做个简单的记录一下.闲言少叙,上代码: 如下代码是精简过后的测试代码, ...

  9. Ruoyi实现单文件上传和多文件打包压缩包下载

    目录 单文件上传篇 1.html 2.JS 3.Controller 3.1 Global.getProfile() 3.3.1 JarBasePath.getBaseJarPathStr() 3.2 ...

最新文章

  1. ATS日志格式中的Squid-和Netscape-格式的缓存结果码
  2. 超卖 100 瓶茅台的事故分析
  3. java and asp.net
  4. Java NIO框架Netty教程(一) – Hello Netty
  5. MSP430F5529 DriverLib 库函数学习笔记(十三)认识低功耗模式
  6. HTML中表单能嵌套吗,你可以嵌套的HTML表单?
  7. java 指针 引用_java中的引用与c中的指针
  8. nginx入门之编译安装
  9. BZOJ4311:向量——题解
  10. Atitit 过去五年的技术趋势与没落技术聚合去重 Attilax认为重要的取出了移动端特有的等。。运维等,,只保留了开发部分的趋势 目录 1. 技术趋势 1 2. 3. 不建议的技术 4 4
  11. 电子科技大学研究生图论课程
  12. ios微信分享失效_微信分享ios失败?
  13. Excel使用教程: 关于Excel的窗口冻结与拆分
  14. H264 数据帧头分析
  15. mantis linux 安装,linux安装mantis详细步骤
  16. 产品经理的修炼之道--读后感
  17. Package | 解决 Could not build wheels for opencv-python which use PEP 517 and cannot be installed
  18. oracle常用日期格式,ORACLE常用日期数据格式
  19. 想自学android软件开发,从何入手
  20. win7 linux终端模拟器,SecureCRT(终端仿真器)

热门文章

  1. 联发科MT3339 GPS单芯片模块介绍
  2. 【论文】GC-MC论文相关
  3. Android茫茫半年求职路,终于斩获三个大厂offer,我总结了24家大厂100份面试题
  4. Informerd详解(2)与C#百度地图定位显示项目学习
  5. 看得见风和日丽,看不见风起“云”涌
  6. PS软件操作应用—文字特效
  7. 别人都在这个春暖花开的端午节吃粽子,而我在踏青学springboot数据持久化
  8. 微信高级群发之预览接口
  9. 算符优先算法c语言,c语言实现算符优先语法分析
  10. chromel浏览器老是提示adobe flash player已过期