打包成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 ...
随机推荐
- bpl 包的编写和引用
转载:http://www.cnblogs.com/gxch/archive/2011/04/23/bpl.html 为什么要使用包? 答案很简单:因为包的功能强大.设计期包(design-time ...
- 《用delphi开发共享软件》-15.2桌面提示器
打开一个配置文件: 打开一个配置文件 操作TStringGrid Procedure EmptyGrid(Var sg:TStringGrid); Var i:Integer; begin do sg ...
- js动画实现侧边栏分享
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- Hadoop2.0(HDFS2)以及YARN设计的亮点
YARN总体上仍然是Master/Slave结构,在整个资源管理框架中,ResourceManager为Master,NodeManager为Slave,ResouceManager负责对各个Node ...
- 通过Spring Mail Api发送邮件
使用Java Mail API来发送邮件也很容易实现,但是最近公司一个同事封装的邮件API实在让我无法接受,于是便打算改用Spring Mail API来发送邮件,顺便记录下这篇文章. [Spring ...
- html5 摇一摇事件监听
先来看下html5的这几个特性: 1.deviceOrientation:方向传感器数据的事件,通过监听该事件可以获取手机静态状态下的方向数据: 2.deviceMotion: 运动传感器数据事件,通 ...
- tornado 学习笔记3 安装
3 安装 安装分为两种方式:自动安装和手动安装,推荐采用自动安装,提前是机器联网的情况下. 3.1 自动安装: 命令:pip install tornado 写一段代码测试一下安装是否成功 # -*- ...
- Install the Maven in your computer
While, this blog will talk about installing the Maven in your computer. There are three steps as fol ...
- MongoDB 用户配置
====[安装]====DOS下切换到文件所在盘符 例如 D:\MongoDB\bin设置数据库保存位置 mongod.exe --dbpath D:\MongoDB\Data [--auth]//用 ...
- Linux进程间通信:IPC对象——信号灯集详解
作者:倪老师,华清远见嵌入式学院讲师. 一.信号灯概述 信号灯与其他进程间通信方式不大相同,它主要提供对进程间共享资源访问控制机制.相当于内存中的标志,进程可以根据它判定是否能够访问某些共享资源,同时 ...