gpt4 book ai didi

google-sheets - 如何通过 sheets API v4 更新 google 电子表格

转载 作者:行者123 更新时间:2023-12-05 06:40:47 35 4
gpt4 key购买 nike

我在不使用批量更新的情况下更新谷歌驱动器上的现有电子表格时遇到问题(现在我不确定它是否可能)

我已经有了包含一些数据的现有电子表格,然后我通过

从谷歌驱动器检索文件
  Drive drive = new Drive.Builder(TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
drive.files().list().execute().getItems()

我很容易通过名称匹配我的文件,然后我只想更新已创建文件中的电子表格。

Sheets service = new Sheets.Builder(GoogleNetHttpTransport.newTrustedTransport(), JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
Spreadsheet spreadsheet = service.spreadsheets().get(file.getId()).execute().setSheets(new ArrayList<>());

在这里,我从与名称匹配的文件中获取电子表格,然后我只想将空表放在那里(例如)。

第一点,我不确定如何正确地“更新”驱动器上的电子表格,因为我无法使用

service.spreadsheets().create(spreadsheet).execute();

而且我不想使用批量更新,因为我已经通过 setSheet() 方法设置了电子表格内容。

我认为它应该最终确定如下:

Permission permission = drive.permissions().get(file.getId(), permissionId).execute().setType("anyone");
drive.permissions().update(
spreadsheet.getSpreadsheetId(),
permissionId,
permission
).execute();

我在这里检查谷歌 API: https://developers.google.com/drive/v2/reference/permissions/update和这里: https://developers.google.com/sheets/api/guides/batchupdate但他们正在使用批量更新。

我很好奇的是为什么有 setSheets() 方法,它似乎很容易用于更新,当我已经创建了我的工作表时,但似乎我不能简单地更新现有文件中的电子表格。

同样有趣的是,每次我使用 drive.perm.update 时,它​​都会创建一个新文件(包含我想更新的电子表格),这对我来说实际上没有多大意义。

那么有没有机会简单地更新驱动器上的文件并只使用电子表格方法?

最佳答案

此声明由 Jay Lee在这个相关SO post将提供清晰的洞察力:

The Google Drive API is meant for generic file / folder interactions. For directly modifying Google Spreadsheet data, the Google Sheets API would be the better choice.

此外,要更新 Google 电子表格,您可能需要检查 Reading & Writing Cell Values其中描述了使用 spreadsheets.values 的基础知识收藏。有人提到,

If you need to update formatting or other properties in a sheet, you will need to use the spreadsheets collection, which is described in Updating Spreadsheets.

更多信息,请参阅Batch update operations和示例显示 here .

关于google-sheets - 如何通过 sheets API v4 更新 google 电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41871508/

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