之前用 NPOI 1.2读取Excel,好像只支持 xls 格式,下载了 NPOI 2.0 然后引用了全部4个dll, XSSFWorkbook 在 NPOI.OOXML.dll中,其他几个不清楚是不是必须引用;
C#代码段
IWorkbook wk; string fileExt = Path.GetExtension(filePath); try { using (var file = new FileStream(filePath, FileMode.Open, FileAccess.Read)) { if (fileExt == ".xls") { wk = new HSSFWorkbook(file); } else if (fileExt == ".xlsx") { wk = new XSSFWorkbook(file); } else { return null; } } } ... for (int i = 0; i < wk.NumberOfSheets; i++) //NumberOfSheets是myxls.xls中总共的表数 { ISheet sheet = wk.GetSheetAt(i); //读取当前表数据 for (int j = 0; j <= sheet.LastRowNum; j++) //LastRowNum 是当前表的总行数 { IRow row = sheet.GetRow(j); //读取当前行数据 if (row != null) { sbr.Append("-------------------------------------\r\n"); //读取行与行之间的提示界限 for (int k = 0; k <= row.LastCellNum; k++) //LastCellNum 是当前行的总列数 { ICell cell = row.GetCell(k); //当前表格 if (cell != null) { sbr.Append(cell.ToString()); //获取表格中的数据并转换为字符串类型 } } } } } NPOI下载地址:http://npoi.codeplex.com/releases