繁体   English   中英

使用触发文件ID检查文件在Google云端硬盘中是否存在

[英]Check whether file exists in Google Drive by using trigger file IDs

我从触发器捕获文件ID,并检查驱动器中是否存在文件。 如缺少Apps脚本openById文档(自然)中所述,如果缺少任何触发器关联文件或该文件为垃圾桶,则以下脚本将引发异常并突然终止脚本。 我该如何克服呢?

function getForms() {
    try {
        var formsList = [];
        var triggers = ScriptApp.getProjectTriggers();
        for (var i = 0; i < triggers.length; i++) {
            var fid = triggers[i].getTriggerSourceId();
            if (fid) {
                var title = FormApp.openById(fid).getTitle() == "" ? "Untitled" : FormApp.openById(fid).getTitle();
                formsList.push([title, fid]);
            }
        }
        return formsList;
    } catch (e) {
        ;//catch errors
    }
}

您可以明智地使用try catch语句来避免Exception

try {
     if (fid) {
            var title = FormApp.openById(fid).getTitle() == "" ? "Untitled" : FormApp.openById(fid).getTitle();
            formsList.push([title, fid]);
        }
  } catch (e) {
    Logger.log(e.message);
  }

使用try catch内部进行循环,而不是在无用的地方进行外部循环

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM