Как проанализировать информацию конкретной вкладки, используя XssFReader в EventModel, используя POI

Я работаю с большим файлом xlsm, файл имеет много вкладок, и я хочу проанализировать информацию конкретной вкладки. Я могу загрузить файл, используя apache EventUsrerModel documentmentaion. Но я не могу получить информацию конкретной вкладки, используя XSSFReader и Кроме того, я использовал другие API, такие как XSSFWorkBook с OCPPackage, но мне не хватает места в куче. Только XSSFReader может загрузить документ в систему, но я не знаю, как получить конкретную информацию о вкладке, используя его. Здесь я даю код, который у меня есть до сих пор,

Я использую класс Java, где я устанавливаю большой файл, как,

public class LargeExcelManager {

private OPCPackage pkg ;



public OPCPackage getPkg() {
    return pkg;
}

public void setPkg(OPCPackage pkg) {
    this.pkg = pkg;
}

public LargeExcelManager(String fileName)throws Exception {

    openWorkbook(fileName);
}

private void openWorkbook(String fileName)throws Exception {
    try {
        System.out.println("Can be added now");
        //File myFile = new File(fileName);
        this.setPkg(OPCPackage.open(fileName));
    } catch (Exception e) {
        e.printStackTrace();
    }
     }


  }

И вот я загружаю документ с помощью XSSFReader,

public void startElement(String uri, String localName, String name,
            Attributes attributes) throws SAXException {
        try {

        // c => cell
        if(name.equals("c")) {
            // Print the cell reference
            System.out.print(attributes.getValue("r") + " - ");
            String  rowIndex = (attributes.getValue("r")); 
            //  I have to ignore some rows here and get the data how can i do that ?
            // Figure out if the value is an index in the SST
            String cellType = attributes.getValue("t");
            if(cellType != null && cellType.equals("s")) {
                nextIsString = true;
            } else {
                nextIsString = false;
            }
        }
        // Clear contents cache
        lastContents = "";
        }catch(Exception e) {
            e.printStackTrace();
        }
    }

Это правильный способ, которым я передаю лист "Информация о займе", который я получаю в процессе?? Если так, то может ли кто-нибудь сказать мне, как я могу получить нужную информацию строки из него???

0 ответов

Другие вопросы по тегам