我如何将NPOI.SS转换为NPOI.XSSF?

时间:2013-02-20 05:59:18

标签: c# npoi

我目前正在尝试替换使用Excel Interop库的需要,但转移到NPOI。我现在用下面的代码点击了一下:

XSSFSheet SheetName = excelWorkbook.GetSheet(sheet);
System.Collections.IEnumerator rows = SheetName.GetRowEnumerator();
while (rows.MoveNext())
{
    XSSFRow row = (XSSFRow)rows.Current;
    foreach (XSSFCell cell in row.Cells)
    {
        cellContent = cell.StringCellValue;
    } 
}

我收到的错误是:

Cannot implicitly convert type 'NPOI.SS.UserModel.ISheet' to 'NPOI.XSSF.UserModel.XSSFSheet'. An explicit conversion exists (are you missing a cast?)

我哪里错了?我确信我没有提及HSSF。

注意:我确信我犯的错误多于此,所以如果你发现任何事情,请指出我。

1 个答案:

答案 0 :(得分:2)

GetSheet方法返回一个类型ISheet,而不是XSSFSheet。

所以,你需要改变

XSSFSheet SheetName = excelWorkbook.GetSheet(sheet);

XSSFSheet SheetName = (XSSFSheet)excelWorkbook.GetSheet(sheet);

将ISheet显式地转换为XSSFSheet