簡體   English   中英

java中的工作簿在xlsx文件中查找工作表中以“$”開頭的所有單詞

[英]Workbook in java to find all words in sheet starting with “$” in a xlsx file

我正在處理一個 Excel 工作表,其中有多個列,其中包含多個文本值,包括以$開頭的變量。 我正在使用工作簿編寫 Java 代碼來讀取 xlsx 文件。 由於我以前從未使用過它,有人可以告訴我如何使用它來完成這項任務。 我的代碼結構在這里:

package com.demo.ExcelProject;

import java.io.File;

import org.apache.poi.sl.usermodel.Sheet;
import org.apache.poi.ss.usermodel.CellRange;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorksheet;

public class CreateResult {

    public static void main(String[] args) {
        try {
            //Create a workbook
            Workbook workbook = WorkbookFactory.create(new File("template.xlsx"));

            //Get the first worksheet
            CTWorksheet worksheet = (CTWorksheet) workbook.getSheetAt(0);
            
            //Find the text string "$"
            
            //Save the document to file
            workbook.saveToFile("output.xlsx");
        }
        catch(Exception e) {
            e.printStackTrace();
        }

    }

}

有親的請指教。

好吧,您將需要迭代器來迭代 Row(這也需要 .next() )和迭代器來迭代單元格。 當您迭代單元格時,您會使用 .next() 獲得下一個單元格,它應該看起來像這樣

Iterator<Row> iterator = inputSheet.iterator();
    while (iterator.hasNext()){
        Row nextRow = iterator.next();
        Iterator<Cell> cellIterator = nextRow.cellIterator(); 
        //iterator() or cellIterator() both ok
        while (cellIterator.hasNext()){
            Cell cell = cellIterator.next();
            String cellVal = cell.getStringCellValue();
            if (cellVal.startsWith("$")){
                //do something
            }
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM