Java怎么下载压缩包
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇内容主要讲解"Java怎么下载压缩包",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java怎么下载压缩包"吧!package com.golden.c
千家信息网最后更新 2026年10月31日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安全错误
数据库的锁怎样保障安全
互联网科技公司简介
蓝思科技飞鸽互联网
科技企业和互联网企业
腾讯阿里互联网科技
没上市的科技互联网公司
互联网 科技创业
万易互联网科技有限公司
卓越科技(互联网 )
睿民互联网科技
亿人帮互联网科技
上海卓越科技 互联网
哈尔滨新华互联网科技
阿里互联网科技公司
坤平互联网科技
天津腾达互联网科技有限公司
佛山市拉法互联网科技有限公司
徐州市互联网科技有限公司
科技互联网海报
杭州融税互联网科技有限公司
互联网科技创业有什么好项目
北京互联网科技
互联网科技视频
小马过河互联网科技
新浪科技互联网
互联网科技公司做什么
成都互联网科技公司100强
本届互联网博览会上的黑科技
科技互联网的核心竞争力
智帮互联网科技公司最近动向
好易买互联网科技