https://poi.apache.org/poi-jvm-languages.html
POILanguageExample.java
// include poi-{version}-{yyyymmdd}.jar, poi-ooxml-{version}-{yyyymmdd}.jar, // and poi-ooxml-schemas-{version}-{yyyymmdd}.jar on Java classpath // Import the POI classes import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import org.apache.poi.ss.usermodel.DataFormatter; // Read the contents of the workbook File f = new File("SampleSS.xlsx"); Workbook wb = WorkbookFactory.create(f); DataFormatter formatter = new DataFormatter(); int i = 1; int numberOfSheets = wb.getNumberOfSheets(); for ( Sheet sheet : wb ) { System.out.println("Sheet " + i + " of " + numberOfSheets + ": " + sheet.getSheetName()); for ( Row row : sheet ) { System.out.println("\tRow " + row.getRowNum()); for ( Cell cell : row ) { System.out.println("\t\t"+ cell.getAddress().formatAsString() + ": " + formatter.formatCellValue(cell)); } } } // Modify the workbook Sheet sh = wb.createSheet("new sheet"); Row row = sh.createRow(7); Cell cell = row.createCell(42); cell.setActiveCell(true); cell.setCellValue("The answer to life, the universe, and everything"); // Save and close the workbook OutputStream fos = new FileOutputStream("SampleSS-updated.xlsx"); wb.write(fos); fos.close();