Java怎么下载压缩包
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,本篇内容主要讲解"Java怎么下载压缩包",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java怎么下载压缩包"吧!package com.golden.c
千家信息网最后更新 2025年12月02日Java怎么下载压缩包
本篇内容主要讲解"Java怎么下载压缩包",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java怎么下载压缩包"吧!
package com.golden.crm.web.util;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import java.util.List;import java.util.zip.ZipEntry;import java.util.zip.ZipOutputStream;/** * 下载zip工具类 */public class ZipUtil { private static final Logger logger = LoggerFactory.getLogger(ZipUtil.class); /** * 生成Zip文件 */ public static void generateZipFile(HttpServletResponse response, List fileUrl, String fileName) throws IOException { ZipOutputStream zipOut = new ZipOutputStream(response.getOutputStream()); for (int i = 0; i < fileUrl.size(); i++) { zipOut.putNextEntry(new ZipEntry(System.currentTimeMillis() + ".jpg")); InputStream stream = this.getInputStreamByUrl(fileUrl.get(i)); if (null == stream) { continue; } int temp = 0; while ((temp = stream.read()) != -1) { zipOut.write(temp); } stream.close(); } zipOut.closeEntry(); zipOut.close(); } /** * 通过url读取图片信息 */ public static InputStream getInputStreamByUrl(String url) { InputStream ins = null; try { URL url_ = new URL(url); HttpURLConnection conn = (HttpURLConnection) url_.openConnection(); conn.setConnectTimeout(3 * 1000); conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); ins = conn.getInputStream(); } catch (IOException e) { logger.info("图片读取失败!-->" + e); } return ins; } /** * 导出Zip文件 */ public static void exportZipFile(String fileName, List fileUrl, HttpServletResponse response, HttpServletRequest request) { try { // 浏览器处理乱码问题 String userAgent = request.getHeader("User-Agent"); // filename.getBytes("UTF-8")处理safari的乱码问题 byte[] bytes = userAgent.contains("MSIE") ? fileName.getBytes() : fileName.getBytes("UTF-8"); // 各浏览器基本都支持ISO编码 fileName = new String(bytes, "ISO-8859-1"); // 文件名外的双引号处理firefox的空格截断问题 response.setHeader("Content-disposition", String.format("attachment; filename=\"%s\"", fileName)); response.setContentType("application/x-msdownload"); response.setCharacterEncoding("UTF-8"); response.setHeader("Content-Disposition", "attachment;filename=" + fileName); this.generateZipFile(response, fileUrl, fileName); } catch (Exception e) { logger.info("下载失败!-->" + e); } }} 到此,相信大家对"Java怎么下载压缩包"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
文件
问题
UTF-8
处理
乱码
内容
浏览器
学习
浏览
实用
更深
兴趣
实用性
实际
工具
引号
操作简单
文件名
方法
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库导入文本实训收获
数据库建表格代码
玉林网络安全支队梁德初
接入层采用什么网络安全技术
学计算机软件开发英语不好
公安局网络安全保卫支队简介
动态处理实现数据库事物
服务器top
win服务器防护软件
查询语句在数据库查询多久会锁死
学校学报查重数据库
iot软件开发用什么编程语言
开票系统更新数据库失败
鹤壁山城区软件开发
郑州网络安全黑板报
日语查重数据库
南召手机app软件开发公司
福建专业网络技术价目表
w网络安全产品有哪些
台州软件开发学习
门头沟区网络软件开发口碑推荐
疫情防控不放松网络安全
湖北电子软件开发商家
已保存文件怎么恢复数据库
厦门云控软件开发商
猫和老鼠手游土豆服务器闪退
二本大学软件开发
数据库 日志文件 压缩
用什么软件开发犀牛gha插件
数据库原理外键怎么设置