C# 要实现哪些Google API来访问不同驱动器位置的文件?
我假设我可以通过使用谷歌项目来实现我的目标。如果这不是这个问题的正确位置,请将我重定向到正确的位置 问题:我有3名员工,在我拥有的谷歌硬盘中有各自的文件夹。它们各自的文件夹中都有一个“TripLog.xls”文件。我需要打开每个文件并提取数据。最终我会写数据,但现在我专注于阅读数据 路径组织如下: Employees\John Smith\Trips\TripLog.xlsC# 要实现哪些Google API来访问不同驱动器位置的文件?,c#,google-sheets,google-api,google-drive-api,C#,Google Sheets,Google Api,Google Drive Api,我假设我可以通过使用谷歌项目来实现我的目标。如果这不是这个问题的正确位置,请将我重定向到正确的位置 问题:我有3名员工,在我拥有的谷歌硬盘中有各自的文件夹。它们各自的文件夹中都有一个“TripLog.xls”文件。我需要打开每个文件并提取数据。最终我会写数据,但现在我专注于阅读数据 路径组织如下: Employees\John Smith\Trips\TripLog.xls Employees\Albert Cooley\Trips\TripLog.xls 员工\Rob Ford\Trips\T
Employees\Albert Cooley\Trips\TripLog.xls
员工\Rob Ford\Trips\TripLog.xls 根据我对
工作表API
的理解,我创建了一个生成电子邮件的服务帐户。我将文件配置为与服务帐户电子邮件共享。这对于一次性场景来说很好,但现在是3个文件。当有15个人时,要求15个服务帐户似乎很尴尬
有没有办法使用
谷歌硬盘API
,这样我就可以浏览文件夹并读取电子表格数据?如果这听起来太明显,很抱歉,但是回答您的问题如果您想访问谷歌硬盘上的文件,您需要使用
这些文件在驱动器中的位置不会改变要使用的API。您只需要知道每个文件的id,如果不知道,则需要提取它。如果您的文件夹结构使其难以更改(如果可以的话),则可以尝试更改它,使其具有更容易遵循的路径。如果只需要所有xls文件,也可以执行此操作
从那以后,你该怎么处理这些文件。如果您想在google工作表中使用它们并利用它们,您将需要使用指定的驱动API重新上传它们。这本书有整整一节
最后,您不需要为每个文件创建一个。您只需确保与服务帐户(以及正确的编辑器权限)共享要修改的每个电子表格
在这种情况下,假设服务帐户只是另一个不需要通过OAuth2同意屏幕的帐户。在Google Drive上,所有文件和文件夹都由唯一的ID管理。因此,如果您已经知道
TripLog.xls
的每个文件的ID,您可以使用ID直接访问它们。如果您从未知道这些ID,例如,在文件夹结构中,当John Smith
文件夹下的Trips
文件夹ID时,您可以使用父文件夹中的TripLog.xls
文件夹ID的搜索查询来检索TripLog.xls
。如果这对你的情况没有帮助,我道歉。顺便说一下,TripLog.xls
是Microsoft Excel文件?因此,使用驱动器API我需要下载一个文件来读取或写入它,而Sheets API允许我在不下载的情况下操作该文件。而且,我可以对所有工作表文件使用相同的服务帐户。实际上很有帮助。谢谢