項目中導出到excel2003中遇到瓶頸,因為列表數據已經超過了65535行,excel2003一個工作表中最大只支持65535行,解決的辦法有兩個:
1,當數據超過65535行時,新建另一個工作表,把數據寫入另外的工作表中,
2,下載最新版本的PNOI組件,最新版本的組件支持office2007,目前最新版本為NPOI 2.0 beta 1,
下面來介紹一下導出NPOI 1.2.4 版本 導出到excel2003和NPOI 2.0 beta 1導出excel2007的具體方法及注意事項。
引用命名空間:
using NPOI.XSSF.UserModel; using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using System.IO;
早期版本引入的命名空間:
using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using System.IO; using NPOI.HSSF.Util;
親,看到哪里不同了嗎?
支持excel2003與支持excel2007大體類似,不同之處可以查看官方demo,
導出到excel中的寫法: HSSFWorkbook wk = new HSSFWorkbook();
導出到excel2007中的寫法: IWorkbook workbook = new XSSFWorkbook();
詳細見代碼,注意的是運行環境,在開發機器上寫demo測試通過,發布到windows server2003上就報出異常,就這么折騰了一天,最后一步一步比較,才發現
服務器端.net framework沒有安裝sp1,特別提醒如果是.net framewok2.0環境,一定要打上 sp1補丁。
最后還有個問題沒有解決:用NPOI新版本 在開發機器上導入導出excel2003都成功,但發布到服務器上,就不能導入excel2003上,報出錯誤。哪位博友知道是什么問題,指點一下。