用压缩流jsp实现从Tomcat服务器下载多个文件
来源:互联网 发布:香港城市大学 知乎 编辑:程序博客网 时间:2024/06/05 08:21
- 首先,怎么做这个界面
你肯定需要从Tomcat服务器上获取这这些文件名。
<% //获取指定下载路径 String path = application.getRealPath("img"); File file = new File(path); //得到此路径下所有文件的名字 String[] names = file.list();%> <body> <form action="dodownload.jsp" method="post"> //循环显示这些文件名 <%for(String name:names){ %> <input type="checkbox" name="fileName" value="<%=name%>"/><%=name%><br> <% }%> <input type="submit" value="下载"/> </form> </body>
- 后台处理
<% request.setCharacterEncoding("UTF-8"); //获取前端选中的文件名 String[] fileNames = request.getParameterValues("fileName"); //文件所在路径(File.separator可以根据操作系统需求而变,在windows上相当于‘\’) String path = application.getRealPath("img")+File.separator; // OutputStream os = response.getOutputStream(); //指定zos输出到哪,在这里我们用response.getOutputStream()就可以在页面弹出的对话框进行选择 ZipOutputStream zout = new ZipOutputStream(os); for(String fileName : fileNames){ //依次读取文件 FileInputStream fis = new FileInputStream(path+fileName); // new ZipEntry(fileName): 使用指定名称创建新的 ZIP 条目 zout.putNextEntry(new ZipEntry(fileName)); byte[] b = new byte[1024]; int len; while((len = fis.read(b))>0){ zout.write(b, 0, len);//写到压缩流 } fis.close(); } zout.close(); os.close();%>
用IE测试是没问题的,因为这种写法太low,还有好多问题没有考虑到,望指正。
阅读全文
0 0
- 用压缩流jsp实现从Tomcat服务器下载多个文件
- 多个文件压缩下载
- IntelliJ IDEA 工具grails实现多个文件压缩下载
- 【Java】Java实现zip压缩多个文件下载
- java web 实现多个文件压缩下载
- Java实现zip压缩多个文件下载
- JAVA 单个或多个下载服务器上带超链接的文件 并压缩后下载
- 用xfire实现从服务器上传和下载文件
- 实现从服务器下载文件代码
- php实现从服务器下载文件
- 使用JAVA从SolarisFTP服务器下载多文件为压缩包
- 在ASP.NET中实现压缩多个文件为.zip文件,实现批量下载功能
- 从tomcat下载文件
- jsp从服务器下载xls文件到客户端
- jsp从服务器下载xls文件到客户端
- 用jsp实现文件下载
- 用JSP实现文件下载
- jsp+servlet实现大型文件下载(tomcat服务器),将自己今天做的和大家一起分享
- 监控Redis集群服务
- 基于django的简单ftp实现
- Qt DLL总结【三】-VS2008+Qt 使用QPluginLoader访问DLL
- C#实战小技巧(一):静态类和静态成员
- properties文件使用
- 用压缩流jsp实现从Tomcat服务器下载多个文件
- 原生js写头部tab栏左右滑动支持移动端
- UVALive 4998 浅谈欧拉定理优化数位动态规划求解高阶同余方程
- Maven相关配置和概念
- Qt中UI::MainWindow与MainWindow
- Git-删除文件和还原(笔记)
- Material Design整理(八)——TabLayout
- Ocr with abbyyR
- Direct3D绘制流水线