C# 导出excel 生成excel

public void outex()
        {
            string fileName = "";
            Application app = null;
            Workbook wb = null;
            Worksheet sheet = null;

            try
            {
                app = new Application();
                app.Visible = false;

                wb = (Workbook)app.Workbooks.Add(Missing.Value);
                sheet = (Worksheet)wb.ActiveSheet;


                sheet.Cells[1, 1] = "bianhao";
                sheet.Cells[1, 3] = "nihao";

                sheet.Cells[3, 5] = "hemingc";

                sheet.get_Range("A1", "F1").Merge(sheet.get_Range("A1", "F1").MergeCells);



                //for (int i = 0; i < contents.Count; i++)
                //{
                //    String item = contents[i];

                //    for (int j = 0; j < item.Length; j++)
                //        sheet.Cells[i + 1, j + 1] = item[j];
                //}


                wb.Saved = true;

                fileName = String.Format("{0}{1}.xlsx", Path.GetTempPath(), DateTime.Now.Ticks);
                app.ActiveWorkbook.SaveCopyAs(fileName);

            }
            finally
            {
                wb.Close(null, null, null);
                app.Workbooks.Close();
                app.Quit();
                Marshal.ReleaseComObject((object)app);
                Marshal.ReleaseComObject((object)wb);
                Marshal.ReleaseComObject((object)sheet);
                GC.Collect();




                System.IO.FileInfo file = new System.IO.FileInfo(fileName);
                Response.Clear();
                Response.Charset = "GB2312";
                Response.ContentEncoding = System.Text.Encoding.UTF8;
                // 添加头信息,为"文件下载/另存为"对话框指定默认文件名 
                Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(file.Name));
                // 添加头信息,指定文件大小,让浏览器能够显示下载进度 
                Response.AddHeader("Content-Length", file.Length.ToString());

                // 指定返回的是一个不能被客户端读取的流,必须被下载 
                Response.ContentType = "application/ms-excel";

                // 把文件流发送到客户端 
                Response.WriteFile(file.FullName);
                // 停止页面的执行 

                Response.End();

            }
        }

 

实现简单说明:

在后台调用excel,生成excel的文件,然后把文件推送到客户端,以供下载。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值