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

10
我想使用apachi poi从某个xlsx文件中读取数据(单元格值)。以下代码成功创建了SXSSFWorkBook实例并分配给db.xlsx(我的虚拟xlsx文件)。我尝试更改工作表号码并使用getSheetNumber方法进行双重检查,以确保正确地分配了工作簿。
接下来,我想将特定的工作表(索引0,名称为main)分配给SXSSFSheet实例,但它目前返回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 方法并得到了积极的结果。所以问题出在无法访问工作表中的行上。因此,最后一行的 getLastRowNum() 无法正常工作。

1个回答

20

您不能。SXSSFWorkBook仅支持写入,不支持读取。

如果要在低内存情况下读取.xlsx文件,建议查看XSSF和SAX事件模型文档


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接