ASP.NET操作Excel(终极方法NPOI)

作者:   出处:互联网   2015-07-06 11:04:28   阅读:3

ASP.NET操作Excel已经是老生长谈的事情了,可下面说的这个NPOI操作Excel,应该是最好的方案了,没有之一,使用NPOI能够帮助开发者在没有安装微软Office的情况下读写Office 97-2003的文件,支持的文件格式包括xls, doc, ppt等。NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作。


 

方法


 

先去官网:http://npoi.codeplex.com/下载需要引入dll(可以选择.net2.0或者.net4.0的dll),然后在网站中添加引用。


 

导出代码:


 

NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();  NPOI.SS.UserModel.ISheet sheet = book.CreateSheet( test_01 );  // 第一列  NPOI.SS.UserModel.IRow row = sheet.CreateRow(0);  row.CreateCell(0).SetCellValue( 第一列第一行 );  // 第二列  NPOI.SS.UserModel.IRow row2 = sheet.CreateRow(1);  row2.CreateCell(0).SetCellValue( 第二列第一行 );  // ...  // 写入到客户端   System.IO.MemoryStream ms = new System.IO.MemoryStream();  book.Write(ms);  Response.AddHeader( Content-Disposition , string.Format( attachment; filename={0}.xls , DateTime.Now.ToString( yyyyMMddHHmmssfff )));  Response.BinaryWrite(ms.ToArray());  book = null;  ms.Close();  ms.Dispose(); 


 

导入代码:


 

HSSFWorkbook hssfworkbook;   #region   public DataTable ImportExcelFile(string filePath)   {   #region//初始化信息   try   {   using (FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.Read))   {   hssfworkbook = new HSSFWorkbook(file);   }   }   catch (Exception e)   {   throw e;   }   #endregion     NPOI.SS.UserModel.Sheet sheet = hssfworkbook.GetSheetAt(0);   System.Collections.IEnumerator rows = sheet.GetRowEnumerator();   DataTable dt = new DataTable();   for (int j = 0; j   (sheet.GetRow(0).LastCellNum); j++)   {   dt.Columns.Add(Convert.ToChar(((int)'A') + j).ToString());   }   while (rows.MoveNext())   {   HSSFRow row = (HSSFRow)rows.Current;   DataRow dr = dt.NewRow();   for (int i = 0; i   row.LastCellNum; i++)   {   NPOI.SS.UserModel.Cell cell = row.GetCell(i);   if (cell == null)   {   dr[i] = null;   }   else   {   dr[i] = cell.ToString();   }   }   dt.Rows.Add(dr);   }   return dt;   }   #endregion 


 

结论


 

这样就很简单的解决Excel的操作了,大家可以试试,很好用,如果觉得对您有用请推荐一下,谢谢。

Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat