如何以递归方式列出javascript中N级以下的Google云端硬盘文件和文件夹?

时间:2019-01-17 18:51:45

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

我需要列出Google驱动器的所有文件和文件夹到某个级别。下面的代码列出了所有文件及其文件夹(直到超过其时间限制)并记录它们。如果递归进行了,我该如何添加某种停止方式,比如说3个级别的子文件夹?

function listFolders(folder) {
  folder = folder || DriveApp.getRootFolder();
  var folderName = folder.getName();
  var files = folder.getFiles();
  while (files.hasNext()) {
    var fileName = files.next().getName();
    Logger.log(folderName + " :: " + fileName);
  }
  var subfolders = folder.getFolders();
  while (subfolders.hasNext()) {
    listFolders(subfolders.next());
  }
}

1 个答案:

答案 0 :(得分:1)

此修改如何?我认为您的情况有几个答案。因此,请仅考虑其中之一。

修改后的脚本:

使用此修改后的脚本时,请运行int? Q3 = null; Q3 = CheckNumericContent(r, dr, "Q3"); //Q3 empty cell for the row in csv. if (Q3.HasValue) { sqlParams.Add("@Q3", Q3); } else { sqlParams.Add("@Q3", DBNull.Value) } sql.ExecStoredProcedureDataTable("[spInsert_Data]", sqlParams);

DBNull.Value

注意:

  • 您的脚本是Google Apps脚本。因此,我将您的脚本修改为Google Apps脚本。
  • 请根据您的情况对其进行修改。

如果我误解了您的问题,请告诉我。我想修改它。