打包成zip
protected void btnExportZip_Click(object sender,EventArgs e)
{
string archiveName=String.Format("zip文件名{0}-{1}.zip",CurrentUser.DepartmentName,DateTime.Now.ToString("yyyy-MM-dd");
Resoponse.CotentType="application/zip";
Response.AddHeader("content-disposition","attachment;filename=\""+HttpUtility.UrlEncode(archiveName,Encoding.UTF8)+"\"");
var docHelper=new DocHelper();
var template=Server.MapPath("~/Template/export/template.doc");//模板
var streamList=new List<MemoryStream>();
//数据源赋值
using(var zip=new ZipFile(Encoding.UTF8))
{
foreach(var proposal in proposaList)
{
var newDs=new Dataset();
var dt1=ListExtend.ListToDataTable(new List<Proposal>(){proposal});// T转换为datatable
dt1.TableName="table";
newDs.Tables.add(dt1);
//关联建议人 把建议人数据放入提案数据的尾部
var suggesterList=ProposerService.GetListByProposalId(proposal.Id);
var dtSuggester=ListExtend.ListToDataTable(suggesterList);
dtSuggester.TableName="Proposer";
newDs.Table.Add(dtSuggester);
newDs.Relations.Add("ProposalWithProposer",dt1.Columns["Id"],dtSuggester.Colums["ProposalId"]);
docHelper.DataSetList=new List<DataSet>(){newDs};
var fileName=string.Format("{0}-{1}-政协提案交办全文.doc",proposal.Num,proposal.Title);
var stream=docHelper.ExportStream(template);
stream.Seek(0,SeekOrigin.Begin);
zip.AddEntry(fileName,stream);
streamList.Add(stream);
}
zip.save(Response.OutputStream);
foreach(var memoryStream in streamList)
{
memoryStream.Close();
}
}
}
打包成zip的更多相关文章
- 将多张图片打包成zip包,一起上传
1.前端页面 <div class="mod-body" id="showRW" style="text-align: center;font- ...
- springboot中使用freemarker生成word文档并打包成zip下载(简历)
一.设计出的简历模板图以及给的简历小图标切图 二.按照简历模板图新建简历word文件 :${字段名},同时将图片插入到word中,并将建好的word文件另存为xml文件: 三.直 ...
- java将文件打包成ZIP压缩文件的工具类实例
package com.lanp; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ja ...
- java批量下载,将多文件打包成zip格式下载
现在的需求的: 根据产品族.产品类型,下载该产品族.产品类型下面的pic包: pic包是zip压缩文件: t_product表: 这些包以blob形式存在另一张表中: t_imagefile表: 现在 ...
- 关于springmvc下服务器文件打包成zip格式下载功能
关于springmvc下服务器文件打包成zip格式下载功能 2016年09月21日 11:22:14 toxic_guantou 阅读数:5731更多 个人分类: 技术点存储 版权声明:本文为博主 ...
- Springboot生成二维码并下载图片png支持打包成zip
pom.xml <!--二维码--> <dependency> <groupId>com.google.zxing</groupId> <arti ...
- php 下载图片并打包成Zip格式压缩包
前言:最近公司有个需要下载多个图片并打包成压缩包的需求,下面来看看具体是怎么做的 1.没什么说的,懒得说啥,直接看代码 /** * 下载图片并生成压缩包 * @param $data 图片数组,一维 ...
- 十一、springboot 配置log4j2以及打包成zip文件
前言 其实我们前面已经配置了日志,但是最近总感觉日志日志格式看的不舒服,并且每次打包都是一个jar 文件,lib都包含在jar 中,每次做很小的修改都需要重新替换jar文件,jar文件会比较大,传输起 ...
- Java实现文件自动打包成zip并下载的代码
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java. ...
- 阿里云打包成zip格式,批量下载
/** * 从阿里云下载文件 (以附件形式下载) 多个文件进行zip下载 第二种 * @param request * @param response */ @ResponseBody @Reques ...
随机推荐
- server返回arraylist时,juqery在客户端的处理
首先,要添加命名控件如下: using System.Web.Services; server端的方法 [WebMethod()] public static ArrayList GetAuthB ...
- iOS 为类添加Xib里面配置的view
创建Empty文件,最好与其Controller同名, 在File's Owner的类属性里面指明其所属类(或者说它是个什么Controller), 从File's Owner右键拖向内部创建的视图( ...
- three.js加入监控
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 使用oracle11g_instant_client来解决在不安装oracle客户端的情况下连接服务端
一.下载instantclient_11_2,可去oracle官网进行下载. 二.解压缩下载的instantclient_11_2,将instantclient_11_2目录拖放到C:\Program ...
- 【CodeVS】1993草地排水
题目描述 Description 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水 ...
- JavaScript放置位置区别
JavaScript放置位置区别 页面中的脚本会在页面载入浏览器后立即执行.我们并不总希望这样.有时,我们希望当页面载入时执行脚本,而另外的时候,我们则希望当用户触发事件时才执行脚本. 位于 head ...
- Java_关于App class loader的总结
Java本身是一种设计的非常简单,非常精巧的语言,所以Java背后的原理也很简单,归结起来就是两点: 1.JVM的内存管理 理解了这一点,所有和对象相关的问题统统都能解决 2.JVM Class Lo ...
- python算法——第四天
一.递归 def func(num): if num / 2 > 0: num -= 1 print(num) num = func(num) print('quit') return num ...
- Eclipse安装nodeclipse插件
1. Start Eclipse, then select Help > Install New Software... 2. Enter the update site URL into th ...
- CSS样式优化
一.css代码优化作用与意义 1.减少占用网页字节.在同等条件下缩短浏览器下载css代码时间,相当于加快网页打开速度2.便于维护.简化和标准化css代码让css代码减少,便于日后维护3.让自己写的cs ...