使用Apache POI的SXSSFSheet从xlsx读取数据

我想使用apachi poi从某个xlsx文件读取数据(单元格值)。 以下代码成功创buildSXSSFWorkBook实例并分配db.xlsx(我的虚拟xlsx)。 我已经尝试更改图纸编号,并使用getSheetNumber方法进行双重检查,以确保工作簿已正确分配。

接下来,我想为SXSSFSheet实例指定一个特定的表(索引0 ,名称为main ),但是当前它返回null 。 (我都试过getSheetAtgetSheet方法)。

 SXSSFRow DummyRow; SXSSFCell DummyCell; int RowCount; OPCPackage pkg = OPCPackage.open(blabla string adress); XSSFWorkbook wb = new XSSFWorkbook(pkg); Workbook MainBook = new SXSSFWorkbook(wb,100); int a = MainBook.getNumberOfSheets(); SXSSFSheet MainSheet = (SXSSFSheet) MainBook.getSheetAt(0); RowCount = MainSheet.getLastRowNum(); 

我究竟做错了什么?

编辑:

我已经尝试getSheetName方法,并有一个积极的结果。 所以问题是在Worksheet中到达行。 所以,最后一行getLastRowNum()不起作用。

你不能。 SXSSFWorkBook是只写,不支持阅读

对于.xlsx文件的低内存读取,您应该查看XSSF和SAX EventModel文档