Hi, I am trying to read data from a XLSX sheet via XSSFSheetXMLHandler. The source code is below.
public static void main(String str[]) throws Exception { String filePath = "/home/gaian/Desktop/salary.xlsx"; File file = new File(filePath); InputStream inputStream = new FileInputStream(file); OPCPackage pkg = OPCPackage.open(inputStream); SheetContentsHandler sheetContentsHandler = new SheetContentsHandler() { @Override public void startRow(int rowIndex) { } @Override public void endRow(int i) { } @Override public void cell(String cell, String formattedValue, XSSFComment c) { System.out.println("cell encountered with addess:<" + cell + "> and value:<" + formattedValue + ">"); } @Override public void headerFooter(String text, boolean isHeader, String tagName) { System.out.println("headerFooter()"); } }; ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(pkg); XSSFReader xssfReader = new XSSFReader(pkg); StylesTable styles = xssfReader.getStylesTable(); XSSFReader.SheetIterator worksheets = (XSSFReader.SheetIterator) xssfReader.getSheetsData(); InputStream stream = worksheets.next(); SAXParserFactory saxFactory = SAXParserFactory.newInstance(); XMLReader sheetParser = saxFactory.newSAXParser().getXMLReader(); ContentHandler handler = new XSSFSheetXMLHandler(styles, strings, sheetContentsHandler, false); sheetParser.setContentHandler(handler); sheetParser.parse(new InputSource(stream)); } When I use the POI version 3.13, I am getting the following output: cell encountered with addess:<A1> and value:<Salary> cell encountered with addess:<A2> and value:<99.965432> The moment I switch to version 3.14 or higher, I am no longer getting any output. Can someone pls let me know if any more code changes needed if I switch to 3.14 or higher? I even checked the test cases in Apache POI 3.17 sources but was shocked not to find any there. Any example/references that I can go through pls? This is blocker for one of my applications. Thanks,