zoukankan      html  css  js  c++  java
  • asp.net 调用 excel 组件

    Asp.net 如何调用 Excel ?

    1.         引用 Microsoft.Office.Interop.Excel.dll,自动包装成Interop.Microsoft.Office.Interop.Excel.dll

    2.         代码:

    /// <summary>

        /// 生成 excel 报表

        /// </summary>

        private void CreateExcelReport()

        {

            string xlTemplateFullPath = Server.MapPath("~/Function/Business/ExcelTemplate/OTOCFPY.xls");

            string xlSavePath = Server.MapPath("~/Function/Business/ExcelReport");

            _Application xlApp = null;

     

            _Workbook xlWorkbook = null;

     

            _Worksheet xlWorksheet = null;

     

     

     

            System.Reflection.Missing oMissing = System.Reflection.Missing.Value;

     

            try

            {

              

                xlApp = new ApplicationClass();

                xlWorkbook = xlApp.Workbooks.Open(xlTemplateFullPath ,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing,

                    oMissing);

                xlWorksheet = (Worksheet)xlWorkbook.Worksheets[1];

     

                xlSavePath = Path.Combine(xlSavePath, DateTime.Now.Ticks.ToString());

     

              //写入excel数据

                WriteData(xlWorksheet );

     

                xlWorkbook.SaveAs(xlSavePath, oMissing, oMissing, oMissing, oMissing,

     

                  oMissing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, oMissing, oMissing, oMissing,

     


                oMissing, oMissing);

                xlApp.Visible = true;

                xlApp.Quit();


                  //发送excel 文件到客户端

                Response.Clear();

                Response.Buffer = true;

                Response.ContentType = "application/ms-excel";

                Response.AppendHeader("Content-Disposition", "attachment;filename=todayDownList.xls");

                System.IO.FileInfo fileInfo = new FileInfo(xlSavePath+".xls" );

                Response.AddHeader("Content-Length", fileInfo.Length.ToString());

             

                Response.WriteFile(fileInfo.FullName);

                Response.End();

            }

            catch (Exception ex)

            {

                Response.Write(ex.Message);

            }

     

            finally

            {

     

                System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);

     

                xlApp = null;

     

                GC.Collect();

     

            }

        }

    注意点

    用完excel后一定要释放excel

  • 相关阅读:
    超强视频分割/剪辑软件:Ultra Video Splitter绿色便携版
    PAZU 4Fang WEB 打印控件
    PHP开源网站
    jQuery实现点击小图显示大图效果
    博观而约取,厚积而薄发
    jquery两边飘浮的对联广告
    图片或文字循环滚动JS代码收集
    降低站长成本 推荐8个免费或低廉小型建站工具
    市净率
    浅谈策略交易、系统交易和程式交易
  • 原文地址:https://www.cnblogs.com/hbb0b0/p/1435762.html
Copyright © 2011-2022 走看看