javascript - 如何在 Google SpreadSheet 上列出 Google 云端硬盘文件夹中的所有文件

标签 javascript google-apps-script google-drive-api

我有一个包含 2000 多个文件的文件夹。我需要在谷歌电子表格中列出所有这些文件。我在网上找到了一些脚本。但它们并不完全有效。 当我点击“运行”时,我只得到一个包含 250 个文件的列表。

在 Google Developers 页面上阅读时,我发现了一些关于启用 Google Drive 高级服务的内容(我做到了)。 我想我可以使用名为“ token ”的东西来解决这个问题??

我不知道..我不是程序员,我几乎不懂英语.. 我尝试编辑此脚本,融合我在网上找到的内容。但一切正常。我只是收到我什至无法理解的错误。

那么..有人能解决吗?

function listFilesInFolder() {
  var folder = DocsList.getFolder("Film");
  var contents = folder.getFiles();
  var file;
  var data;

  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.clear();

  sheet.appendRow(["Nome", "Data", "Dimensione"]);

  for (var i = 0; i < contents.length; i++) {
    file = contents[i];

    if (file.getFileType() == "SPREADSHEET") {
      continue;
    }

    data = [ 
      file.getName(),
      file.getDateCreated(),
      file.getSize(),
    ];

    sheet.appendRow(data);
  }
};

最佳答案

此脚本至少适用于 2200 个文件:)

function listFilesInFolder(id) {
  var folder = DriveApp.getFolderById('MyFolderID');
  var contents = folder.getFiles();
  var file;
  var name;
  var sheet = SpreadsheetApp.getActiveSheet();
  var date;
  var size;

  sheet.clear();
  sheet.appendRow(["Nome", "Data", "Dimensione"]);


  while(contents.hasNext()) {
    file = contents.next();
    name = file.getName();
    date = file.getDateCreated()
    size = file.getSize()

    data = [name, date, size]
    sheet.appendRow(data);
  }
};

关于javascript - 如何在 Google SpreadSheet 上列出 Google 云端硬盘文件夹中的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25684098/

相关文章:

android - 谷歌驱动器修改日期给出错误的时间

javascript - 循环状态并创建多个组件

javascript - 显示前一天的 Google Apps 脚本

java - 如何将适用于 Java 的 Google Drive Client Library 与我自己开发的 Web 应用程序 OAUTH 2 框架一起使用?

javascript - 通过 Drive API 自动执行 Google Sheet 操作(制作副本、Google App 脚本、触发器)

javascript - 调用需要 AJAX 授权的 Google Apps 脚本

python - 使用 Google Drive API 将 PDF 转换为任何格式

javascript - 防止在 jQuery 中执行排队的事件

javascript - 是否可以在 ES6 的类中使用箭头函数?

javascript - 异步时 Ember Mocha 测试失败(使用 ember-mocha-adapter)