資源簡介
C#(Winform)利用NPOI導入與導出EXCEL
環境:VS2012,.NET4.0

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Windows.Forms;
using?NPOI.SS.UserModel;
using?NPOI.XSSF.UserModel;
using?System.IO;
using?System.Threading;
using?NPOI.HSSF.UserModel;
namespace?MyTool
{
????public?partial?class?frmMain?:?Form
????{
????????public?frmMain()
????????{
????????????InitializeComponent();
????????}
????????private?void?button1_Click(object?sender?EventArgs?e)
????????{
????????????OpenFileDialog?open?=?new?OpenFileDialog();
????????????open.Filter?=?“Excel2003(*.xls)|*.xls|Excel2007|*.xlsx“;
????????????if?(open.ShowDialog()?==?System.Windows.Forms.DialogResult.OK)
????????????{
????????????????DataSet?ds?=?ExcelHelper.ExcelToDataSet(open.FileName);
????????????????dataGridView1.DataSource?=?ds.Tables[0];
????????????}
????????}
????????private?void?frmMain_Load(object?sender?EventArgs?e)
????????{
????????}
????????private?void?button2_Click(object?sender?EventArgs?e)
????????{
????????????if?(dataGridView1.Rows.Count?>?0)
????????????{
????????????????DataTable?dt?=?(DataTable)dataGridView1.DataSource;
????????????????dt.ExportToExcel();
????????????}
????????}
????}
????public?static?class?ExcelHelper
????{
????????public?static?DataSet?ExcelToDataSet(string?fileName)
????????{
????????????return?ExcelToDataSet(fileName?true);
????????}
????????public?static?DataSet?ExcelToDataSet(string?fileName?bool?firstRowAsHeader)
????????{
????????????int?sheetCount?=?0;
????????????return?ExcelToDataSet(fileName?firstRowAsHeader?out?sheetCount);
????????}
????????public?static?DataSet?ExcelToDataSet(string?fileName?bool?firstRowAsHeader?out?int?sheetCount)
????????{
????????????using?(DataSet?ds?=?new?DataSet())
????????????{
????????????????using?(FileStream?fileStream?=?new?FileStream(fileName?FileMode.Open?FileAccess.Read))
????????????????{
????????????????????IWorkbook?workbook?=?WorkbookFactory.Create(fileStream);
????????????????????IFormulaEvaluator?evaluator?=?WorkbookFactory.CreateFormulaEvaluator(workbook);
????????????????????sheetCount?=?workbook.NumberOfSheets;
????????????????????for?(int?i?=?0;?i?????????????????????{
????????????????????????ISheet?sheet?=?workbook.GetSheetAt(i);
????????????????????????DataTable?dt?=?ExcelToDataTable(sheet?evaluator?firstRowAsHeader);
????????????????????????ds.Tables.Add(dt);
????????????????????}
????????????????????return?ds;
????????????????}
????????????}
????????}
????????public?static?DataTable?ExcelToDataTable(string?fileName?string?sheetName)
????????{
????????????return?ExcelToDataTable(fileName?sheetName?true);
????????}
????????public?static?DataTable?ExcelToDataTable(string?fileName?string?sheetName?bool?firstRowAsHeader)
????????{
????????????using?(FileStream?fileStream?=?new?FileStream(file
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????144??2016-08-31?17:24??MyTool\MyTool\app.config
?????文件?????200704??2016-07-21?09:50??MyTool\MyTool\bin\Debug\ICSharpCode.SharpZipLib.dll
?????文件??????15360??2016-08-31?17:38??MyTool\MyTool\bin\Debug\MyTool.exe
?????文件????????144??2016-08-31?17:24??MyTool\MyTool\bin\Debug\MyTool.exe.config
?????文件??????34304??2016-08-31?17:38??MyTool\MyTool\bin\Debug\MyTool.pdb
?????文件??????22984??2016-08-31?17:38??MyTool\MyTool\bin\Debug\MyTool.vshost.exe
?????文件????????144??2016-08-31?17:24??MyTool\MyTool\bin\Debug\MyTool.vshost.exe.config
?????文件????????490??2010-03-17?22:39??MyTool\MyTool\bin\Debug\MyTool.vshost.exe.manifest
?????文件????1678848??2016-07-21?09:50??MyTool\MyTool\bin\Debug\NPOI.dll
?????文件?????494080??2016-07-21?09:50??MyTool\MyTool\bin\Debug\NPOI.OOxm
?????文件??????91136??2016-07-21?09:50??MyTool\MyTool\bin\Debug\NPOI.Openxm
?????文件????2121728??2016-07-21?09:50??MyTool\MyTool\bin\Debug\NPOI.Openxm
?????文件?????200704??2016-07-21?09:50??MyTool\MyTool\bin\Release\ICSharpCode.SharpZipLib.dll
?????文件??????13312??2016-08-31?17:24??MyTool\MyTool\bin\Release\MyTool.exe
?????文件????????144??2016-08-31?17:24??MyTool\MyTool\bin\Release\MyTool.exe.config
?????文件??????28160??2016-08-31?17:24??MyTool\MyTool\bin\Release\MyTool.pdb
?????文件????1678848??2016-07-21?09:50??MyTool\MyTool\bin\Release\NPOI.dll
?????文件?????494080??2016-07-21?09:50??MyTool\MyTool\bin\Release\NPOI.OOxm
?????文件??????91136??2016-07-21?09:50??MyTool\MyTool\bin\Release\NPOI.Openxm
?????文件????2121728??2016-07-21?09:50??MyTool\MyTool\bin\Release\NPOI.Openxm
?????文件??????11531??2016-08-31?17:38??MyTool\MyTool\frmMain.cs
?????文件???????5293??2016-08-31?17:37??MyTool\MyTool\frmMain.Designer.cs
?????文件???????5817??2016-08-31?17:37??MyTool\MyTool\frmMain.resx
?????文件?????200704??2016-07-21?09:50??MyTool\MyTool\Library\ICSharpCode.SharpZipLib.dll
?????文件????1678848??2016-07-21?09:50??MyTool\MyTool\Library\NPOI.dll
?????文件?????494080??2016-07-21?09:50??MyTool\MyTool\Library\NPOI.OOxm
?????文件??????91136??2016-07-21?09:50??MyTool\MyTool\Library\NPOI.Openxm
?????文件????2121728??2016-07-21?09:50??MyTool\MyTool\Library\NPOI.Openxm
?????文件???????5433??2016-08-31?17:24??MyTool\MyTool\MyTool.csproj
?????文件????????143??2016-07-21?09:39??MyTool\MyTool\MyTool.csproj.user
............此處省略45個文件信息
評論
共有 條評論