gpt4 book ai didi

java - 如何迭代 Google 表格中的所有行

转载 作者:行者123 更新时间:2023-11-29 02:37:55 27 4
gpt4 key购买 nike

我正在使用 Google Spreadsheets Api 和 Android Studio。我正在从工作表中读取信息,并将结果显示到 ListView 中。我的问题是我只能从第一行检索信息,而不能从下一行检索信息。我该怎么做?

我有下一个代码:

private class MakeRequestTask extends AsyncTask<Void, Void, List<String>> {
private Exception mLastError = null;

MakeRequestTask(GoogleAccountCredential credential) {

}

@Override
protected List<String> doInBackground(Void... params) {
try {
return getDataFromApi();
} catch (Exception e) {
mLastError = e;
cancel(true);
return null;
}
}

private List<String> getDataFromApi() throws IOException {

String range = "Sheet1!A2:H";
List<String> results = new ArrayList<String>();
ValueRange response = mService.spreadsheets().values()
.get(spreadsheet_id, range)
.execute();
List<List<Object>> values = response.getValues();
if (values == null) {
//No me deja mostrar toast aqui
} else {
for (List row : values) {
row.get(0);
row.get(1);
row.get(2);
row.get(5);
System.out.println("resultados:" + row.get(0) + ", " + row.get(1));
}
}


return results;
}

最佳答案

尝试检查 Reading multiples ranges 上的示例代码

要读取多个不连续的范围,请使用 spreadsheets.values.batchGet ,它允许您指定要检索的任意数量的范围:

这是一个示例 Java 代码:

List<String> ranges = Arrays.asList(
//Range names ...
);
BatchGetValuesResponse result = service.spreadsheets().values().batchGet(spreadsheetId)
.setRanges(ranges).execute();

另一件事是尝试将 for 循环替换为:

for (List row : values) {
// Print columns A and E, which correspond to indices 0 and 4.
System.out.printf("%s, %s\n", row.get(0), row.get(4));
}

您可以指定所需的索引。在示例索引 0 到 4 中。

希望这就是您要找的。

关于java - 如何迭代 Google 表格中的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45923743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com