日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

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

發布時間:2025/3/15 asp.net 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET操作Excel(终极方法NPOI) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ASP.NET操作Excel已經是老生長談的事情了,可下面我說的這個NPOI操作Excel,應該是最好的方案了,沒有之一,能夠幫助開發者在沒有安裝微軟Office的情況下讀寫Office 97-2003的文件,支持的文件格式包括xls, doc, ppt等。

AD:2013大數據全球技術峰會課程PPT下載

?

前言

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的操作了,大家可以試試,很好用,如果覺得對您有用請推薦一下,謝謝。

    原文鏈接:http://www.cnblogs.com/stone_w/archive/2012/08/02/2620528.html

    轉載于:https://www.cnblogs.com/xyzhuzhou/p/3139651.html

    總結

    以上是生活随笔為你收集整理的ASP.NET操作Excel(终极方法NPOI)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。