zoukankan      html  css  js  c++  java
  • NPIO 导出Execl

    步骤1:导入NOIO.dll    (我导入压缩包中的4.0)

    下载地址:http://npoi.codeplex.com/downloads/get/1572743   

    步骤二:粘贴代码(^  ....   ^)

        public class ExeclController : Controller
        {
            //
            // GET: /Execl/
            public ActionResult Index()
            {
                DataTable dt = new DataTable("AllVehSite");
                DataColumnCollection columns = dt.Columns;
                columns.Add("AcctId", typeof(System.Int32));
                columns.Add("SiteId", typeof(System.Int32));
                columns.Add("DbType", typeof(System.String));
                columns.Add("ConnStr", typeof(System.String));
             

                DataRow datarow = dt.NewRow();
                datarow["AcctId"] = 1;
                datarow["SiteId"] = 2;
                datarow["DbType"] = "2";
                datarow["ConnStr"] = "1";

                dt.Rows.Add(datarow);
                
                WriteExcel(dt, @"C:UsersAdministratorDesktopdatas111.xls");


                return View();
            }

            #region 导出Execl
            public static void WriteExcel(DataTable dt, string filePath)
            {
                if (!string.IsNullOrEmpty(filePath) && null != dt && dt.Rows.Count > 0)
                {
                    NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
                    NPOI.SS.UserModel.ISheet sheet = book.CreateSheet(dt.TableName);

                    NPOI.SS.UserModel.IRow row = sheet.CreateRow(0);
                    for (int i = 0; i < dt.Columns.Count; i++)
                    {
                        row.CreateCell(i).SetCellValue(dt.Columns[i].ColumnName);
                    }
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        NPOI.SS.UserModel.IRow row2 = sheet.CreateRow(i + 1);
                        for (int j = 0; j < dt.Columns.Count; j++)
                        {
                            row2.CreateCell(j).SetCellValue(Convert.ToString(dt.Rows[i][j]));
                        }
                    }
                    // 写入到客户端  
                    using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
                    {
                        book.Write(ms);
                        using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
                        {
                            byte[] data = ms.ToArray();
                            fs.Write(data, 0, data.Length);
                            fs.Flush();
                        }
                        book.Close();
                        book = null;
                    }
                }
            }
            #endregion  

          

        }

    步骤3:修改路径,Databable

  • 相关阅读:
    GCD介绍(二): 多核心的性能
    GCD介绍(一): 基本概念和Dispatch Queue
    iOS 中如何监测某段代码运行的时间
    DSOframer 无法正常加载的解决方案
    Hexo 官方主题 landscape-plus 优化
    在 Parallels Desktop 中,全屏模式使用 Win7,唤醒时黑屏
    VS2015 企业版不支持 JavaScript 语法高亮、智能提醒
    解决 Boot Camp 虚拟机升级到 Windows 10 后 Parallels Desktop 不能识别的问题
    利用SkyDrive Pro 迅速批量下载SharePoint Server 上已上传的文件
    SharePoint Server 2013 让上传文件更精彩
  • 原文地址:https://www.cnblogs.com/j2ee-web-01/p/7359568.html
Copyright © 2011-2022 走看看