zoukankan      html  css  js  c++  java
  • GridView导出Excel

    #region ExportExcel
        /// <summary>
        /// 导出Excel
        /// </summary>
        /// <param name="dt">需要导出的数据</param>
        public void ExportExcel(DataTable dt)
        {
            Microsoft.Office.Interop.Excel.Application xApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook xBook = null;
            Microsoft.Office.Interop.Excel.Worksheet xSheet = null;
            object objOpt = System.Reflection.Missing.Value;
            string strNewFileName = string.Empty;
            try
            {
                string _ProjectID = "AdjustAction" + DateTime.Now.ToString("yyyyMMddhhmmssfff");
                string strFilePath = Server.MapPath(ConfigurationSettings.AppSettings["Adjust_Path"].ToString());
                string strTempFilePath = Server.MapPath(ConfigurationSettings.AppSettings["Adjust_TempFilePath"].ToString());
                strNewFileName = string.Format("{0}\\{1}.xls", strFilePath, _ProjectID);
                string strTemplate = strTempFilePath + "\\TempAdjustAciton.xls";
                if (File.Exists(strTemplate))
                {
                    FileInfo fi = new FileInfo(strTemplate);
                    if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
                    {
                        fi.Attributes = FileAttributes.Normal;//改变template文件的只读属性
                    }
                }
                System.IO.File.Copy(strTemplate, strNewFileName, true);//复制模板

                DateTime createTime = DateTime.Now;
                if (dt != null & dt.Rows.Count != 0)
                {
                    int i;
                    xBook = xApp.Workbooks.Open(strNewFileName, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt);
                    xSheet = (Microsoft.Office.Interop.Excel.Worksheet)xBook.Sheets[1];
                    for (i = 0; i < dt.Rows.Count; i++)
                    {
                        xSheet.Cells[i + 2, 1] = Convert.ToString(dt.Rows[i]["SAREA"]);
                        xSheet.Cells[i + 2, 2] = Convert.ToString(dt.Rows[i]["SACTIONNAME"]);
                        xSheet.Cells[i + 2, 3] = dt.Rows[i]["MAXTIME"];
                        xSheet.Cells[i + 2, 4] = dt.Rows[i]["OLDDATA"];
                        xSheet.Cells[i + 2, 5] = dt.Rows[i]["ADJUSTDATA"];
                        xSheet.Cells[i + 2, 6] = dt.Rows[i]["NOWDATA"];
                    }
                    xBook.Save();
                }
            }
            catch (Exception ex)
            {
                UIHelper.Alert(this.Page, ex.Message.ToString());
            }
            finally
            {
                if (xBook != null)
                {
                    xBook.Close(true, objOpt, objOpt);
                }
                if (xApp != null)
                {
                    xApp.Quit();
                }
            }
            Response.AppendHeader("Content-Disposition", "attachment;filename=AdjustAction.xls");
            Response.ContentType = "application/ms-excel";
            Response.WriteFile(strNewFileName);
        }
        #endregion

  • 相关阅读:
    C++学习笔记之 C++对C的增强和拓展
    C++学习笔记之 命名空间
    Python学习笔记之 MySQL
    C++学习笔记之 命名空间
    C++学习笔记之 开始
    C++学习笔记之 环境搭建
    C++学习笔记之 初识与概述
    数据结构与算法笔记(一) 数据结构与算法绪论
    C语言项目案例之 贪吃蛇
    C语言学习笔记之 文件操作
  • 原文地址:https://www.cnblogs.com/studio313/p/1138723.html
Copyright © 2011-2022 走看看