文件打包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 ...
最新文章
- 最大后验概率和极大似然
- 算法提高课-搜索-双向广搜 AcWing 190. 字串变换:bfs、双向bfs、queue和unordered_map
- Elasticsearch聚合查询案例分享
- UI 控件 —UITextFile
- php 关闭oracle,CSS_ORACLE启动和关闭实例,实例启动和关闭:一.数 - phpStudy
- 读《一个程序猿的生命周期》有感
- error: stray '\343' in program 问题解决
- 【Python】Python库之网络应用开发
- google地图 反向地址解析(地址查询)
- 每个星座对应的天使。
- python统计数组元素个数_统计二维数组里元素的个数
- 在matlab中如何构建加权邻接矩阵,如何构建图像的加权邻接矩阵
- Kotlin基本类型
- AMP Roadshow技术分享路演中国专场报名开始了!
- 【Unity面试】 2022年Unity面试题分享 | 全面总结 | 建议收藏
- 入门Python需要掌握的技能有哪些?
- *oulapp的双向证书破解
- 安卓逆向009实战分析smali代码破解小游戏(贪吃蛇)
- python吃显卡还是内存不足_解决Pytorch 训练与测试时爆显存(out of memory)的问题
- 【Python】卡方检验