文件打包zip 下载
/**
* 可用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 下载相关推荐
- 通过url地址批量打包zip下载文件
通过url地址批量打包zip下载文件 controller @ApiOperation("通过下载url批量打包zip下载")@PostMapping("batchDow ...
- 大批量图片打包zip下载
使用插件 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jq ...
- linux命令封装sh,shell脚本学习之调用脚本将文件打包zip的方法示例
前言 本文主要给大家介绍的是关于调用脚本将文件打包zip的相关资料,分享出来供大家参考学习,下面来一起看看详细的介绍: 最近刚刚接触shell脚本,写了一点简单的练手.这里是用python调用脚本执行 ...
- 生成pdf文件并打包zip下载
第一种写法,使用org.apache.tools.zip,具体流程: 1.逐个生成pdf文件 2.打包zip 3.下载 第二种写法,使用java.util.zip,这种写法没成功. 1.使用pdf文件 ...
- Asp.Net Web Api 2 实现多文件打包并下载文件示例源码
前言 最近由于工作和个人事务,站点也好久没更新了,但这并不影响我对.NET的热情.站点的更新工作还是得想办法抽时间来完成的. 提要 今天利用中午的时间来写一篇关于Asp.Net Web Api下载文件 ...
- 文件打包,下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
总结: 使用PHP下载文件的操作需要给出四个header(),可以参考我的另一篇博文: ...
- 【java】 将服务器上文件夹上所有文件打包并下载
功能要求:教师端要将学生上传的报告按班级进行打包下载. 前台HTML如下: <td align="right"><button class="layui ...
- java实现文件打包压缩下载接口(附上可实际运行的代码)
最近在写项目接口,涉及到文件下载.打包压缩下载,单个文件下载还是比较简单的,多文件下载涉及到打包和压缩知识,之前也没做过,写篇博客做个简单的记录一下.闲言少叙,上代码: 如下代码是精简过后的测试代码, ...
- Ruoyi实现单文件上传和多文件打包压缩包下载
目录 单文件上传篇 1.html 2.JS 3.Controller 3.1 Global.getProfile() 3.3.1 JarBasePath.getBaseJarPathStr() 3.2 ...
最新文章
- ATS日志格式中的Squid-和Netscape-格式的缓存结果码
- 超卖 100 瓶茅台的事故分析
- java and asp.net
- Java NIO框架Netty教程(一) – Hello Netty
- MSP430F5529 DriverLib 库函数学习笔记(十三)认识低功耗模式
- HTML中表单能嵌套吗,你可以嵌套的HTML表单?
- java 指针 引用_java中的引用与c中的指针
- nginx入门之编译安装
- BZOJ4311:向量——题解
- Atitit 过去五年的技术趋势与没落技术聚合去重 Attilax认为重要的取出了移动端特有的等。。运维等,,只保留了开发部分的趋势 目录 1. 技术趋势	1 2. 3. 不建议的技术	4	4
- 电子科技大学研究生图论课程
- ios微信分享失效_微信分享ios失败?
- Excel使用教程: 关于Excel的窗口冻结与拆分
- H264 数据帧头分析
- mantis linux 安装,linux安装mantis详细步骤
- 产品经理的修炼之道--读后感
- Package | 解决 Could not build wheels for opencv-python which use PEP 517 and cannot be installed
- oracle常用日期格式,ORACLE常用日期数据格式
- 想自学android软件开发,从何入手
- win7 linux终端模拟器,SecureCRT(终端仿真器)