Example usage for org.apache.poi.xssf.eventusermodel ReadOnlySharedStringsTable ReadOnlySharedStringsTable

List of usage examples for org.apache.poi.xssf.eventusermodel ReadOnlySharedStringsTable ReadOnlySharedStringsTable

Introduction

In this page you can find the example usage for org.apache.poi.xssf.eventusermodel ReadOnlySharedStringsTable ReadOnlySharedStringsTable.

Prototype

public ReadOnlySharedStringsTable(PackagePart part) throws IOException, SAXException 

Source Link

Document

Like POIXMLDocumentPart constructor Calls #ReadOnlySharedStringsTable(PackagePart,boolean) , with a value of true to include phonetic runs.

Usage

From source file:XLSX2CSV.java

License:Apache License

public void process() throws IOException, OpenXML4JException, ParserConfigurationException, SAXException {

    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetName = iter.getSheetName();
        this.output.println();
        this.output.println(sheetName + " [index=" + index + "]:");
        processSheet(styles, strings, stream);
        stream.close();//w w  w. j a v  a2s. com
        ++index;
    }
    close();
}

From source file:br.com.mapfre.lv.jobmanager.XLSX2CSV.java

License:Apache License

/**
 * Initiates the processing of the XLS workbook file to CSV.
 *
 * @throws IOException// w w  w  .ja v a  2s .  c om
 * @throws OpenXML4JException
 * @throws ParserConfigurationException
 * @throws SAXException
 */
public void process() throws IOException, OpenXML4JException, ParserConfigurationException, SAXException {

    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetName = iter.getSheetName();
        this.output.println();
        this.output.println(sheetName + " [index=" + index + "]:");
        processSheet(styles, strings, stream);
        stream.close();
        ++index;
    }
}

From source file:ch.admin.searchreplace.SearchReplaceTerms.java

License:Apache License

private static HashMap<String, String> readSearchReplaceTerms(String input) throws Exception {
    HashMap<String, String> terms = new HashMap<String, String>();

    // The package open is instantaneous, as it should be.
    OPCPackage xlsxPackage = OPCPackage.open(input, PackageAccess.READ);
    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();

    InputStream stream = iter.next();
    String sheetName = iter.getSheetName();
    System.out.println(sheetName);

    InputSource sheetSource = new InputSource(stream);
    SAXParserFactory saxFactory = SAXParserFactory.newInstance();
    SAXParser saxParser = saxFactory.newSAXParser();
    XMLReader sheetParser = saxParser.getXMLReader();
    ContentHandler handler = new MyXSSFSheetHandler(styles, strings, terms);
    sheetParser.setContentHandler(handler);
    sheetParser.parse(sheetSource);/*from w w w  . jav  a2s .  c o m*/

    stream.close();

    return (terms);

}

From source file:ch.admin.searchreplace.XLSX2CSV.java

License:Apache License

/**
 * Initiates the processing of the XLS workbook file to CSV.
 * // w ww . j a v  a  2 s .c o m
 * @throws IOException
 * @throws OpenXML4JException
 * @throws ParserConfigurationException
 * @throws SAXException
 */
public void process() throws IOException, OpenXML4JException, ParserConfigurationException, SAXException {

    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetName = iter.getSheetName();
        this.output.println();
        this.output.println(sheetName + " [index=" + index + "]:");
        processSheet(styles, strings, stream);
        stream.close();
        ++index;
        break;
    }
}

From source file:cn.xiaozhi.spider.util.XLSXCovertCSVReader.java

License:Apache License

/**
 * ??? /*from ww w.  ja  v  a 2 s  .co  m*/
 *
 * @throws IOException
 * @throws OpenXML4JException
 * @throws ParserConfigurationException
 * @throws SAXException
 */
public List<String[]> process()
        throws IOException, OpenXML4JException, ParserConfigurationException, SAXException {

    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    List<String[]> list = null;
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetNameTemp = iter.getSheetName();
        if (this.sheetName.equals(sheetNameTemp)) {
            list = processSheet(styles, strings, stream);
            stream.close();
            ++index;
        }
    }
    return list;
}

From source file:com.bstek.dorado.importer.policy.impl.XLSX2CSV.java

License:Apache License

/**
 * Initiates the processing of the XLS workbook file to CSV.
 * //from   www .  ja  va 2  s .  c o  m
 * @throws IOException
 * @throws OpenXML4JException
 * @throws ParserConfigurationException
 * @throws SAXException
 */
public void process() throws IOException, OpenXML4JException, ParserConfigurationException, SAXException {

    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetName = iter.getSheetName();
        this.output.println();
        this.output.println(sheetName + " [index=" + index + "]:");
        processSheet(styles, strings, stream);
        stream.close();
        ++index;
    }
    close();
}

From source file:com.googlecode.sqlsheet.stream.XlsxSheetIterator.java

License:Apache License

@Override
protected void postConstruct() throws SQLException {
    try {/*  w  ww .j ava  2  s . co  m*/
        //Open and pre process XLSX file
        xlsxPackage = OPCPackage.open(getFileName().getPath(), PackageAccess.READ);
        strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
        XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
        styles = xssfReader.getStylesTable();
        //Find appropriate sheet
        XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
        while (iter.hasNext()) {
            InputStream stream = iter.next();
            String currentSheetName = iter.getSheetName();
            if (currentSheetName.equalsIgnoreCase(getSheetName())
                    || ("\"" + currentSheetName + "\"").equalsIgnoreCase(getSheetName())) {
                handler = new XSSFSheetEventHandler(styles, strings);
                XMLInputFactory factory = XMLInputFactory.newInstance();
                reader = factory.createXMLEventReader(stream);
                //Start sheet processing
                while (reader.hasNext() && getCurrentSheetRowIndex() == 0) {
                    processNextEvent();
                }
                processNextRecords();
            }
        }
    } catch (Exception e) {
        throw new SQLException(e.getMessage(), e);
    }
}

From source file:com.jkoolcloud.tnt4j.streams.inputs.ExcelSXSSFRowStream.java

License:Apache License

/**
 * Reads XSSF (XLXS) format excel file using Apache POI streaming SXSSF API.
 *
 * @param xlsxFile//ww w.  jav  a2  s.com
 *            excel XSSF format file to read
 *
 * @throws IOException
 *             if excel file or workbook can't be read
 * @throws SAXException
 *             if file contained XML reading fails
 * @throws OpenXML4JException
 *             if file contained XML reading fails
 */
protected void readXLXS(File xlsxFile) throws IOException, SAXException, OpenXML4JException {
    try (OPCPackage xlsxPackage = OPCPackage.open(xlsxFile, PackageAccess.READ)) {
        ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(xlsxPackage);
        XSSFReader xssfReader = new XSSFReader(xlsxPackage);
        StylesTable styles = xssfReader.getStylesTable();
        XSSFReader.SheetIterator sIter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
        while (sIter.hasNext()) {
            try (InputStream sStream = sIter.next()) {
                String sheetName = sIter.getSheetName();
                boolean match = sheetNameMatcher == null || sheetNameMatcher.matcher(sheetName).matches();
                if (!match) {
                    continue;
                }

                SXSSFSheet sheet = new SXSSFSheet(new SXSSFWorkbook(), null);
                processSXSSFSheet(styles, strings, new XLSXSheetContentHandler(this, sheet), sStream);
            }
        }
    }
}

From source file:com.lfwer.common.XLSX2CSV.java

License:Apache License

/**
 * Initiates the processing of the XLS workbook file to CSV.
 *
 * @throws IOException/*  ww w. jav  a 2  s.  com*/
 *             If reading the data from the package fails.
 * @throws SAXException
 *             if parsing the XML data fails.
 */
public void process() throws IOException, OpenXML4JException, SAXException {
    ReadOnlySharedStringsTable strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
    XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
    StylesTable styles = xssfReader.getStylesTable();
    XSSFReader.SheetIterator iter = (XSSFReader.SheetIterator) xssfReader.getSheetsData();
    int index = 0;
    while (iter.hasNext()) {
        InputStream stream = iter.next();
        String sheetName = iter.getSheetName();
        this.output.println();
        this.output.println(sheetName + " [index=" + index + "]:");
        processSheet(styles, strings, new SheetToCSV(), stream);
        stream.close();
        ++index;
    }
}

From source file:com.myjeeva.poi.ExcelReader.java

License:Open Source License

private void read(int sheetNumber) throws RuntimeException {
    ReadOnlySharedStringsTable strings;/*from  w w w  .j  a v a 2s  .c  om*/
    try {
        strings = new ReadOnlySharedStringsTable(this.xlsxPackage);
        XSSFReader xssfReader = new XSSFReader(this.xlsxPackage);
        StylesTable styles = xssfReader.getStylesTable();
        XSSFReader.SheetIterator worksheets = (XSSFReader.SheetIterator) xssfReader.getSheetsData();

        for (int sheetIndex = 0; worksheets.hasNext(); sheetIndex++) {
            InputStream stream = worksheets.next();
            if (null != sheetCallback)
                this.sheetCallback.startSheet(sheetIndex, worksheets.getSheetName());

            if ((READ_ALL == sheetNumber) || (sheetIndex == sheetNumber)) {
                readSheet(styles, strings, stream);
            }
            IOUtils.closeQuietly(stream);

            if (null != sheetCallback)
                this.sheetCallback.endSheet();
        }
    } catch (IOException ioe) {
        LOG.error(ioe.getMessage(), ioe.getCause());
    } catch (SAXException se) {
        LOG.error(se.getMessage(), se.getCause());
    } catch (OpenXML4JException oxe) {
        LOG.error(oxe.getMessage(), oxe.getCause());
    } catch (ParserConfigurationException pce) {
        LOG.error(pce.getMessage(), pce.getCause());
    }
}