ASPNET 文件批量下载
2018-11-13 07:34:11来源:博客园 阅读 ()
HTML
<a class="btn btn-warning" id="btnDownload">选中下载</a>
JS
/* 批量下载 */ // li 列表的文件下载 $("#btnDownload").on('click', function() { var arr = []; var urls = escape(arr.join(',')); $(this).attr('href', '@Url.Action("BatchDownloadFiles")?str=' + urls + '&r=' + Math.random()); });
API
public ActionResult BatchDownloadFiles(string str, int type) { var idList = str.Split(',').ToList().ConvertAll(x => int.Parse(x)); MemoryStream ms = new MemoryStream(); ZipOutputStream zos = new ZipOutputStream(ms); zos.IsStreamOwner = false; zos.SetLevel(1);//设置压缩级别 var rsp = new GetListByDetailIDListRequest { UserID = CurrentUserId, JobTypeID = type, IDList = idList }.GetResponse(); if (rsp.IsSuccess) { rsp.Data.ForEach(dto => { var filebyte = ByteOfGetOrderFiles(dto); //byte类型的数据 ZipEntry entry = new ZipEntry(fileName); //定义新的压缩数据对象 zos.PutNextEntry(entry); zos.Write(filebyte, 0, filebyte.Length); //写入 }); } zos.Finish(); zos.Close(); ms.Position = 0; return File(ms, "application/x-zip-compressed", string.Format("批量下载文件-{0}.zip", DateTime.Now.ToString("yyyy年MM月dd HH时mm分ss秒"))); } public byte[] ByteOfGetOrderFiles(ExtractRecordDetailDTO dto) { var stream = DownloadFile(dto.SourceFile); byte[] buffur = new byte[stream.Length]; stream.Read(buffur, 0, (int)stream.Length); return buffur; } public static Stream DownloadFile(string path) { using (var client = new WebClient()) { var stream = client.DownloadData(path); var outStream = new MemoryStream(stream); return outStream; } }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:ASPNET 下载共享文件
- asp.net源程序编译为dll文件并调用的实现过程 2020-03-29
- 如何创建和读取xml文件 2020-03-10
- asp.net网页里面为什么找不到CS文件 2020-03-09
- ASP.NET实现大文件上传功能 2020-03-08
- .Net MVC网站中配置文件的读写 2020-02-28
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash