Zunächst habe ich 4 Zeilen mit Daten verwendet und dann löschte ich die letzten zwei Zeilen. Das Problem ist, ich bekomme immer noch 4 als die Gesamtzahl der Zeilen. Was sollte ich tun, um die Anzahl zu aktualisieren?Wie bekomme ich aktualisierte Zeilenanzahl von Excel mit Apache poi
FileInputStream inputStream = new FileInputStream(new File(excelFilePath));
Workbook workbook = new XSSFWorkbook(inputStream);
Sheet firstSheet = (Sheet) workbook.getSheetAt(0);
System.out.println("No of rows:"+firstSheet.getPhysicalNumberOfRows());
Iterator<Row> iterator = firstSheet.iterator();
try{
while (iterator.hasNext()) {
Row nextRow = iterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
cell.setCellType(Cell.CELL_TYPE_STRING);
if(!cell.getStringCellValue().isEmpty()){
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
writer.append(cell.getStringCellValue());
break;
}
}
}
}
}finally{
inputStream.close();
workbook.close();
writer.flush();
writer.close();
}
Gehen Sie zum Excel-Dokument, wählen Sie gelöschte Zeilen und löschen Sie den Inhalt. Wenn Sie etwas in die Zelle eingegeben haben, wird es als verwendet markiert und in die physische Anzahl der Zeilen/Zellen eingeschlossen, es sei denn, Sie haben es gelöscht. –
@TarasShpulyar Ich habe den Inhalt gelöscht, indem ich die gelöschten Zeilen mit der Option "Inhalt löschen" ausgewählt habe. Aber ich bekomme immer noch die gleiche Anzahl von Zeilen. – user1553680