打包成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 ...
随机推荐
- 解决Genymotion无法创建新设备或无法显示设备列表问题
准备工作: 链接: https://pan.baidu.com/s/1i5v4IBN 密码: jc3m 用2.8的和最新VirtualBox-5.1.10-112026-Win 注意事项: 1.笔记本 ...
- 点击 Run 之后发生了什么?
这是我以前去链家网面试的一个题目,当时回答不够全面,现在看了2016 WWDC以及Sunnyxx iDev大会的分享之后,感觉对这个问题有了一些简单的认识,就来总结下.如果大家有补充,麻烦评论下哦! ...
- ol新属性
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- PAT (BL) 1001
链接:http://pat.zju.edu.cn/contests/pat-b-practise/1001 /* 1001. 害死人不偿命的(3n+1)猜想 (15) 卡拉兹(Callatz)猜想: ...
- 每天一个linux命令--more/less
最近小编在和第三方调试接口,只能查日志,查询除了tail,grep,cat,之外,还有 more.less,他们的优点在于可以翻页. more最基本的指令就是按空白键(space)就往下一页显示,按 ...
- BZOJ4527 : K-D-Sequence
先把所有数减去最小值,防止负数出现问题. $d=0$,直接$O(n)$扫过去即可. $d\neq 0$,首先通过双指针求出每个数作为右端点时往左可以延伸到哪里,中间任意两个数差值都是$d$的倍数且不重 ...
- RMI之HelloWorld尝试
服务器端代码如下: IHello接口: import java.rmi.Remote; import java.rmi.RemoteException; public interface IHello ...
- YSLOW
什么是YSlow? YSlow是Yahoo发布的一款基于FireFox的插件. 如何安装YSlow? 安装YSlow必须首先先安装 Firebug,然后下载YSlow,再对其安装. YSlow有什么用 ...
- 彻底弄明白之数据结构中的排序七大算法-java实现
package ds; /* * author : codinglion * contact: chenyakun@foxmail.com */ import java.util.Random; pu ...
- 【BZOJ】2154: Crash的数字表格
http://www.lydsy.com/JudgeOnline/problem.php?id=2154 题意:求$\sum_{i=1}^{n} \sum_{j=1}^{m} lcm(i, j)$, ...