JavaWeb实现压缩多个文件并下载实例详解
下面一段代码给大家分享JavaWeb实现压缩多个文件并下载功能,具体代码如下所示:
//文件名称 String[] names={"one.jpg","two.jpg","three.jpg","four.jpg"}; //四个文件流 FileInputStream input1 = new FileInputStream(new File("文件路径")); FileInputStream input2 = new FileInputStream(new File("文件路径")); FileInputStream input3 = new FileInputStream(new File("文件路径")); FileInputStream input4 = new FileInputStream(new File("文件路径")); FileInputStream[] inputs={input1,input2,input3,input4}; //ZIP打包图片 File zipFile = new File("压缩文件存放路径"); byte[] buf = new byte[1024]; int len; ZipOutputStream zout=new ZipOutputStream(new FileOutputStream(zipFile)); for (int i = 0; i < inputs.length; i++) { FileInputStream in =inputs[i]; zout.putNextEntry(new ZipEntry(names[i])); while ((len = in.read(buf)) > 0) { zout.write(buf, 0, len); } zout.closeEntry(); in.close(); } zout.close(); //下载图片 FileInputStream zipInput =new FileInputStream(zipFile); OutputStream out = response.getOutputStream(); response.setContentType("application/octet-stream"); response.setHeader("Content-Disposition", "attachment; filename=images.zip"); while ((len=zipInput.read(buf))!= -1){ out.write(buf,0,len); } zipInput.close(); out.flush(); out.close(); //删除压缩包 zipFile.delete();
总结
以上所述是小编给大家介绍的JavaWeb实现压缩多个文件并下载实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
javaWeb项目部署到阿里云服务器步骤详解
记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以完成打包,如下图: 2.安装Xshell和Xftp两种软件 简单介绍下这两种软件作用(详情请百度相关文档) Xshell:通过网络连接到远程服务器主机. Xftp:能在Linux.Unix和Windows之间互传文件. 3.通过Xshell连接远程主机,如下图 4.创建会话完成,点击连接,显示
-
关于javaWeb中405错误的解决方法
今天写了一个servlet,可是一直405报错,开始以为web.xml里面的servlet配置有问题,可是那样的话应该报404错误啊 最后才发现在重写doPost和doGet方法的时候,写成了dopost和doget,因为java对大小写很敏感,故相当于没有重新httpservelt里面的方法. 反思:编程需谨慎!!! 以上这篇关于javaWeb中405错误的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
JavaWeb 中Cookie实现记住密码的功能示例
本文主要内容: •1.什么是Cookie •2.Cookie带来的好处 •3.Cookie的主要方法 一.什么是Cookie cookie是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段.Cookie的目的就是为用户带来方便,为网站带来增值.虽然有着许多误传,事实上Cookie并不会造成严重的安全威胁.Cookie永远不会以任何方式执行,因此也不会带来病毒或攻击你的系统.另外,由于浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为
-
详解velocity模板使javaWeb的html+js实现模块化
详解velocity模板使javaWeb的html+js实现模块化 页面上一些基础数据或者其他页面经常用到部分,可以独立出来做成小组件,组件预留调用入口,需要的页面直接调用即可. 如图,页面中的展示分类和搜索标签在多个页面重复使用,可以将这部分内容独立出来,做成组件,供后续开发调用: classify_search_tag.html文件如下,其中包含HTML节点和jQuery代码: <!-- 展示分类与搜索标签组件使用说明: 1.新增时父页面调用方法:页面加载时调用 goodsClassifyA
-
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
问题:表单怎么在输入后立即验证,而不是提交后再验证那么不方便(网上搜到的要么是模棱两可,要么是残缺不全-) 方法:鉴于此,加上我个人的理解(注释)在上面. 截图: 代码: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>用户注册</title
-
JavaWeb表单注册界面的实现方法
JavaWeb表单注册界面的实现方法 今天又做了一个注册界面,还是一如既往的从以前的代码copy过来,于是决定总结一下做注册界面的思路,供同学参考. Step1 页面实现 在这一步主要用到了html.css.JavaScript的知识. 1) html 建立页面基本结构.建议在做html的时候给每个Element都设置id,方便之后的css.JavaScript操作. 2) css 给节点设置长.宽.边距.边框.背景等样式. 3) js 设置按钮鼠标悬停时的背景变化等.页面效果实现. St
-
JavaWeb实现压缩多个文件并下载实例详解
下面一段代码给大家分享JavaWeb实现压缩多个文件并下载功能,具体代码如下所示: //文件名称 String[] names={"one.jpg","two.jpg","three.jpg","four.jpg"}; //四个文件流 FileInputStream input1 = new FileInputStream(new File("文件路径")); FileInputStream input2
-
JavaWeb实现文件上传与下载实例详解
在Web应用程序开发中,文件上传与下载功能是非常常用的功能,下面通过本文给大家介绍JavaWeb实现文件上传与下载实例详解. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件.这个common-fileupload上传组件的jar包可以去apache官网上面下载,common-fileupload是依赖于c
-
最详细的文件上传下载实例详解(推荐)
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件.这个common-fileupload上传组件的jar包可以去apache官网上面下载,也可以在struts的lib文件夹下面找到,stru
-
java 解压与压缩文件夹的实例详解
java 解压与压缩文件夹的实例详解 注意:JDK7支持设置编码设置编码格式 zipFile,zipInputStream,zipOutputStream都增加了编码格式,如果是jdk1.6需要其他的包辅助 下面为自带jdk压缩文件夹代码: public void dozip(String srcfile, String zipfile) throws IOException { String temp = ""; File src = new File(srcfile); File
-
Hadoop文件的存储格式实例详解
sequence文件存储格式 1.txt 纯文本格式,若干行记录.默认用字符编码存储 2.SequenceFile格式(顺序文件格式,可进行切割) key-value 格式进行存储,最终形成的是一个二进制文件, 需用hadoop提供的api进行写入存储. 编写 写入 seq文件案例. Configuration configuration = new Configuration(); configuration.set("fs.defaultFS","hdfs://s100:
-
Linux上的文件搜索命令实例详解
locate 基础了解 在centos7上默认没有locate命令,需要先手动安装.安装步骤:http://www.cnblogs.com/feanmy/p/7676717.html locate命令搜索的后台数据库路径:/var/lib/mlocate/mlocate.db ls -hl /var/lib/mlocate total 1.2M -rw-r----- 1 root slocate 1.2M Oct 16 14:36 mlocate.db 更新数据库使用updatedb,配置文件为
-
IOS 简单的本地json格式文件解析的实例详解
IOS 简单的本地json格式文件解析的实例详解 ljweibo.json文件 { "data":[{ "name" : "孙悟空", "content" : "7月12日的国务院常务会议上,李克强明确要求,要将已审议的<快递条例(草案)>向社会公开征求意见.在会上,总理说了这么一段话:"几年前,快递业刚刚开始发展的时候,有些城市不允许快递存在,理由是影响市容整洁,快递员骑的摩的也不允许停放.但
-
Android String资源文件插入值实例详解
Android String资源文件插入值实例详解 我们在用string字符串资源文件引用的时候,有时候会遇到一串字符串要在中间插入一个值的问题, 比如 登录名: XXX,这里XXX是变化的.这时候我们可能会想到拼接.其实也可以使用格式化方式处理.比如 <string name="alert">I am %1$d years old</string> 在代码中使用的话: nt nAge=23; String sAgeFormat = getResources()
-
web前端vue之vuex单独一文件使用方式实例详解
Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试.状态快照导入导出等高级调试功能. 上次我用了一个加减的例子为大家讲解vuex的基本的使用方式,和在什么样的情况下使用.上次还是在一个组件内把这个例子简单的展示了下,这次我把vuex抽离出来一个
-
Django实现web端tailf日志文件功能及实例详解
这是Django Channels系列文章的第二篇,以web端实现tailf的案例讲解Channels的具体使用以及跟Celery的结合 通过上一篇 <Django使用Channels实现WebSocket--上篇> 的学习应该对Channels的各种概念有了清晰的认知,可以顺利的将Channels框架集成到自己的Django项目中实现WebSocket了,本篇文章将以一个Channels+Celery实现web端tailf功能的例子更加深入的介绍Channels 先说下我们要实现的目标:所有
随机推荐
- javascript 面向对象思想 附源码
- js 强制弹出窗口代码研究-又一款代码
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- Nginx下配置pathinfo及ThinkPHP的URL Rewrite模式支持
- ASP上传漏洞之利用CHR(0)绕过扩展名检测脚本
- Docker容器的Tengine实践
- js验证是否为数字的总结
- Python中内建函数的简单用法说明
- jQuery 复合选择器应用的几个例子
- 记一次Ubuntu服务器被黑经历
- 双系统直接进入grub不能进入ubantu的快速解决方法
- sql rollup用法 小计汇总
- SQL 经典语句
- MySQL 数据库常用命令 简单超级实用版
- php Redis函数用法实例总结【附php连接redis单例类】
- 精心收集的jQuery常用的插件1000
- $.each与$().each的区别示例介绍
- C#中通过使用Connection类来实现打开/关闭数据库的代码实例
- C++类的分离式写法介绍示例
- Django异步任务之Celery的基本使用