ASP.NET : 如何将服务端的多个文件打包下载
来源:互联网 发布:linux怎么使用root权限 编辑:程序博客网 时间:2024/05/16 11:29
正在开发的系统中包含了这部分功能。下面将有关重点的代码粘贴出来,给大家参考
我用到了ICSharpCode.SharpZipLib这个dll. 据我所知,凡是现在做压缩和解压缩之类的程序,很少有人会不用这个组件的。赞一个先
1. 核心代码
MemoryStream ms = new MemoryStream(); byte[] buffer = null; using (ZipFile file = ZipFile.Create(ms)) { file.BeginUpdate(); file.NameTransform = new MyNameTransfom();//通过这个名称格式化器,可以将里面的文件名进行一些处理。默认情况下,会自动根据文件的路径在zip中创建有关的文件夹。 file.Add(Server.MapPath("~/images/1.jpg")); file.Add(Server.MapPath("~/images/2.jpg")); file.Add(Server.MapPath("~/images/3.jpg")); file.CommitUpdate(); buffer = new byte[ms.Length]; ms.Position = 0; ms.Read(buffer, 0, buffer.Length); } Response.AddHeader("content-disposition", "attachment;filename=Test.zip"); Response.BinaryWrite(buffer); Response.Flush(); Response.End();
另外,我专门写了一个NameTransfom
using System.IO;public class MyNameTransfom : ICSharpCode.SharpZipLib.Core.INameTransform { #region INameTransform 成员 public string TransformDirectory(string name) { return null; } public string TransformFile(string name) { return Path.GetFileName(name); } #endregion }
2. 测试效果
0 0
- ASP.NET : 如何将服务端的多个文件打包下载
- ASP.NET : 如何将服务端的多个文件打包下载
- ASP.NET : 如何将服务端的多个文件打包下载
- 如何将服务端的多个文件打包下载(转)
- asp.net多文件打包下载
- ASP.NET 文件打包下载
- asp.net 服务端的文件管理器
- ASP.NET多文件批量打包下载
- ASP.NET多文件批量打包下载
- ASP.NET多文件批量打包下载
- ASP.NET多文件批量打包下载
- asp.net如何控制文件下载的权限?
- ASP.NET将数据导出到一个EXCEL文件的多个SHEET中
- ASP.NET 文件的下载
- asp.net如何打包
- asp.net如何打包
- asp.net mvc如何实现下载文件
- asp.net mvc如何实现文件下载
- 内核oops分析
- Matlab 对视频的读写操作
- Calendar中的Calendar.WEEK_OF_YEAR陷阱
- unix学习笔记-----王保明学习笔记-----socket编程进阶---tcpip的11中状态
- bzoj1616【Usaco2008 Mar】Cow Travelling 游荡的奶牛
- ASP.NET : 如何将服务端的多个文件打包下载
- Java图形开发--GUI
- 切换到kali linux的第一篇记录备份
- 华米:2014年做智能手环踩过的那些坑
- SDN控制器相关链接资料
- 【SQL】遍历辖区表,并按祖父子顺序展示
- mysql配置感悟
- 不规则瀑布流
- 高通camera学习笔记五(actuator驱动参数解析)