NPOI xls:计算结束指数(x)超出允许范围(y..y + 2)
写入新创build的文件时,我总是得到一个exception。 即使提供的表单为空,我也会得到这个exception。 没有床单的工作簿保存没有问题。
这个例外显示为空白表单。
附加信息:计算结束指数(1932)超出允许范围(1908..1910)
我正在使用NOPI.dll ver.2.1.3.1 http://npoi.codeplex.com/我尝试创build的文件是.xls(Excel 97-2003)
代码中的文件pathbolow有一个值@“C:\ TB \ Report.xls”
我的代码
public void Generate() { HSSFWorkbook newWorkBook = new HSSFWorkbook(); ISheet newSheet = newWorkBook.CreateSheet("Main"); newWorkBook.Add(newSheet); using (FileStream fileOut = new FileStream(filePath, FileMode.Create)) { newWorkBook.Write(fileOut); } }
文件被创build,但是它是空的。
当使用具有行和列的工作表创buildxls时,结果是相同的,除了exception中的数字更高。
问题是使用ISheet而不是HSSFSheet。 示例中显示的示例使用了ISheet,但是不正确。
正确的代码:
public void Generate() { HSSFWorkbook newWorkBook = new HSSFWorkbook(); HSSFSheet newSheet = (HSSFSheet)newWorkBook.CreateSheet("Main"); var headerRow = newSheet.CreateRow(0); var headerCell = headerRow.CreateCell(0); headerCell.SetCellValue("Something"); using (FileStream fileOut = new FileStream(filePath, FileMode.Create)) { newWorkBook.Write(fileOut); } }