Code Bye

NPOI读取excel文件功能,兼容xls和xlsx

之前用 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

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明NPOI读取excel文件功能,兼容xls和xlsx