使用ClosedXML导出Excel

一、资源:ClosedXML提供VB.NET和C#两种版本,可以在ClosedXML上下载。

            这个是开源的,网站上有源代码。

二、ClosedXML需要Visual Studio 2010,可以导出Excel 2003、2007、2010版本。

 

三、使用ClosedXML

      1、引用ClosedXml.dll和DocmentFormat.OpenXml

      2、using ClosedXML.Excel

 

例子

      

        //data
        string[,] data = {{"班级","姓名","成绩"}
        ,{"1班","张三","90"},{"2班","李四","90"},{"3班","王五四","90"}};


 

          

            string xlName = "xlName";
            //实例一个Workbook
            var xlBook = new XLWorkbook();
            //实例一个worksheet
            var ws = xlBook.Worksheets.Add("sheet1");
            for(int i = 0; i < 4;i++)
                for(int j = 0;j < 3;j++)
                    ws.Cell(i+1, j+1).Value = data[i,j];

            MemoryStream ms = new MemoryStream();
            xlBook.SaveAs(ms);
            ms.Flush();
            ms.Position = 0;

            byte[] oByte = null;
            oByte = ms.ToArray();

            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.ClearHeaders();
            HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
            HttpContext.Current.Response.ContentType = "application/vnd.ms-excel.sheet.binary.macroEnabled.12";
            HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + xlName + ".xlsx");
            HttpContext.Current.Response.BinaryWrite(oByte);
            //清除缓存
            HttpContext.Current.Response.Flush();
            HttpContext.Current.Response.End();
            //关闭缓冲区
            ms.Close();


 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值