使用NPOI讀取Excel到DataTable

2021-08-20 08:28:42 字數 2900 閱讀 1060

一、npoi介紹:

使用 npoi 你就可以在沒有安裝 office 或者相應環境的機器上對 word/excel 文件進行讀寫。npoi是構建在poi 3.x版本之上的,它可以在沒有安裝office的情況下對word/excel文件進行讀寫操作

二、安裝npoi

新建控制台應用程式》管理nuget程式包》搜尋npoi>安裝npoi

三.下面是我需要的讀取的excel檔案,資料格式如下:

四.新增excelhelper類:

[csharp] 

view plain

copy

using

system;  

using

npoi.ss.usermodel;  

using

npoi.xssf.usermodel;  

using

npoi.hssf.usermodel;  

using

system.io;  

using

system.data;  

namespace

npoi.readexcel  

/// 

/// 將datatable資料匯入到excel中

/// 

/// 要匯入的資料

/// datatable的列名是否要匯入

/// 要匯入的excel的sheet的名稱

/// 匯入資料行數(包含列名那一行)

public

intdatatabletoexcel(datatable data, 

string

sheetname, 

bool

iscolumnwritten)  

else

if(iscolumnwritten == 

true

) //寫入datatable的列名

count = 1;  

}  else

for(i = 0; i 

++count;  

}  workbook.write(fs); //寫入到excel

return

count;  

}  catch

(exception ex)  

}  /// 

/// 將excel中的資料匯入到datatable中

/// 

/// excel工作薄sheet的名稱

/// 第一行是否是datatable的列名

/// 返回的datatable

public

datatable exceltodatatable(

string

sheetname, 

bool

isfirstrowcolumn)  

}  else

if(sheet != 

null

)    

}  }  

startrow = sheet.firstrownum + 1;  

}  else

//最後一列的標號

introwcount = sheet.lastrownum;  

for(

inti = startrow; i <= rowcount; ++i)  

data.rows.add(datarow);  

}  }  

return

data;  

}  catch

(exception ex)  

}  public

void

dispose()  

protected

virtual

void

dispose(

bool

disposing)  

fs = null

;  disposed = true

;  }  

}  }  

}  五,讀取檔案到datatable:

[csharp] 

view plain

copy

using

system;  

using

system.collections.generic;  

using

system.data;  

using

system.linq;  

using

system.text;  

using

system.threading.tasks;  

namespace

npoi.readexcel  

}  }  catch

(exception ex)  

}  console.writeline(""

);  

}  console.readkey();  

}  /// 

/// 根據datatable獲得列名

/// 

/// 表物件

/// 返回結果的資料列陣列

NPOI 讀取 excel通用類

using system using system.collections.generic using system.text using system.io using system.data using npoi.hssf.usermodel using npoi.ss.usermodel na...

NPOI讀取Excel資料應用

npoi 是 poi專案的 net 版本。使用 npoi 你就可以在沒有安裝 office 或者相應環境的機器上對 word excel 文件進行讀寫。npoi 是構建在 poi 3.x 版本之上的,它可以在沒有安裝 office 的情況下對 word excel 文件進行讀寫操作。需求 根據exc...

NPOI匯出資料到Excel

asp.net操作excel已經是老生長談的事情了,可下面我說的這個npoi操作excel,應該是最好的方案了,沒有之一,使用npoi能夠幫助開發者在沒有安裝微軟office的情況下讀寫office 97 2003的檔案,支援的檔案格式包括xls,doc,ppt等。npoi是構建在poi 3.x版本...