我的google云端硬盘中有一个文件夹,其中包含许多文档和图片。我可以通过单独下载每个文件来下载文件夹内容。通过这种方法,我列出了我的谷歌文档中的所有文件,并且只是单独下载了文档或图像。
然而,这种方法非常昂贵,因为它会占用大量的api请求。
我注意到在网络浏览器中,您可以点击google驱动器文件夹并选择,将文件夹另存为.zip。
那么,有没有人知道如何使用android google drive api下载个人google驱动器文件夹为.zip?
感谢阅读并感谢任何意见或建议。
答案 0 :(得分:1)
我认为您无法使用Google Drive API执行此操作。但是,您可以使用Google Apps脚本,但如果您下载太多或大文件,我建议您不要使用此方法。
以下是如何从another thread in stackoverflow
中删除zip文件的示例代码var folder = DocsList.getFolder('path/to/folder');
folder.createFile(Utilities.zip(folder.getFiles(), 'newFiles.zip'));
此外,如果您在文件夹中有多个具有相同名称的文件,它将无法使用... Google云端硬盘文件夹支持该功能,但Zip文件不支持。
使用多个具有相同名称的文件:
var folder = DocsList.getFolder('path/to/folder');
var names = {};
folder.createFile(Utilities.zip(folder.getFiles().map(function(f){
var n = f.getName();
while (!names[n]) { n = '_' + n }
names[n] = true;
return f.getBlob().setName(n);
}), 'newFiles.zip'));
希望这有帮助