C# 使用微软自带控件导出excel

导出excel:使用微软默认的dll,通过点击导出按钮启用js的open方法新建出一个ashx页面将文件导出到浏览器进行下载,此处放出部分代码以大概表示出顺序,完整代码见https://www.cnblogs.com/Brambling/p/6854731.html,写得可以说是非常详细了。就是别忘了导出到浏览器下载要删除目录下的缓存文件,这个是先保存到本地再输出到浏览器下载的。

            try{
                Application excel = new Application();
                excel.Visible = false;
                Workbooks workbooks = excel.Workbooks;
                Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet);
                Worksheet worksheet = GetWorkSheet(workbook);//自定义方法
                workbook.Saved = true;
                string path = HttpContext.Current.Server.MapPath("Export/");
                FileUtil.CreateDirectory(path);
                //设置新建文件路径及名称
                savePath = path + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + ".xls";
                //创建文件
                System.IO.FileStream file = new System.IO.FileStream(savePath, System.IO.FileMode.CreateNew);

                //关闭释放流,不然没办法写入数据
                file.Close();
                file.Dispose();

                //保存到指定的路径
                workbook.SaveCopyAs(savePath);

                //输出到浏览器下载
                System.IO.FileInfo fileInfo = new System.IO.FileInfo(savePath);
                context.Response.ContentType = "application/vnd.ms-excel";
                context.Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.xls", "-权限清单"));
                context.Response.WriteFile(fileInfo.FullName);
                context.Response.Flush();
               }
                finally
                {
                    FileUtil.DeleteFile(savePath);
                    context.Response.End();
                }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值