簡體   English   中英

爪哇。 從電子表格對象中獲取值(列表列表)

[英]Java. Get value from Spreadsheet object (list of lists)

我得到一個帶有 CellData 的電子表格對象

        var request = service.spreadsheets().get(spreadsheetId);
        request.set("fields", "sheets/data/rowData/values/note");
        request.setRanges(ranges);
        var spreadsheet = request.execute();
        var resultString = spreadsheet.toString();

返回的對象如下所示:

調試控制台

我需要從中得到一個值得注意的價值。

toString() 方法返回

{"sheets":[{"data":[{"rowData":[{"values":[{"note":"test note"}]}]}]}]}

我顯然可以通過在該字符串中搜索來獲得價值,但是這樣做的正確方法是什么?

對此 API 調用的響應是電子表格資源,在 Java 庫中,該資源電子表格類管理。

Spreadsheet 類有一個getSheets()方法,它返回一個Sheets列表。 由於你只有一張sheet,獲取電子表格中的第一個元素(第一張sheet),並使用對應的方法獲取sheet的GridData

RowDataCellData重復相同的過程,直到通過getNote()到達note

代碼示例:

Spreadsheet spreadsheet = request.execute();
Sheet sheet = spreadsheet.getSheets().get(0);
GridData data = sheet.getData().get(0);
RowData rowData = data.getRowData().get(0);
CellData cellData = rowData.getValues().get(0);
String note = cellData.getNote();

筆記:

  • 根據您提供的信息,我假設您在每個列表中只有一個元素(也就是說,您只想檢索單個工作表中的單個單元格)。 如果不是這種情況,您應該遍歷相應的列表而不是訪問其第一個元素。
  • 不要忘記為所有這些類導入模塊。

暫無
暫無

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

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