[C#] 透過NPOI 讀取 Excel *.xls 檔案中的值
2014-05-22
上一篇,我們介紹產出跨欄的Excel 檔案,這一篇我們來說一下,如何透過NPOI 讀取Excel 中的值
首先介紹一下今天的xls 檔案,長這副德性
其中就如圖說的,有兩筆資料,但是我們要如何把這Excel 透過 NPOI 讀取出來呢?
直接看Code :
HSSFWorkbook workbook;
//讀取專案內中的sample.xls 的excel 檔案using (FileStream file = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "sample.xls", FileMode.Open, FileAccess.Read))
{ workbook = new HSSFWorkbook(file);}
//讀取Sheet1 工作表var sheet = workbook.GetSheet("Sheet1");for (int row = 0; row <= sheet.LastRowNum; row++)
{if (sheet.GetRow(row) != null) //null is when the row only contains empty cells
{foreach (var c in sheet.GetRow(row).Cells)
{ //如果是數字型 就要取 NumericCellValue 這屬性的值 if(c.CellType==CellType.NUMERIC) Response.Write(c.NumericCellValue.ToString("#")); //如果是字串型 就要取 StringCellValue 這屬性的值 if(c.CellType==CellType.STRING)Response.Write(c.StringCellValue);
//每個欄中間加上逗點 Response.Write(",");}
//每一行補上換行 Response.Write("<br />");}
}
其中比較重要的部分,就是你得判斷,每一個CELL的 CellType 如果是數字就要讀數字的Property,如果是字串就是要讀取字串的 Property
範例下載:
