我一直在玩谷歌驱动器脚本。

我需要从电子表格创建一个文件夹,以防不存在具有该名称的文件夹。

但是,问题在于它说该文件夹存在,即使它不存在。

该检查位于try函数内部。

像这样 :

try {
   //currentName is the name of the folder and it's working properly
   var folder = DriveApp.getFoldersByName(currentName);
   Logger.log('That folder already exists!')
} catch(err) {
   var folder = DriveApp.createFolder(currentName);
   Logger.log('Folder created because it didnt exist');
}


任何原因即使它不存在也总是会找到一个文件夹?

在我的驱动器上工作正常。但是后来我将其放置在具有很多文件夹的服务器驱动器中。是权限问题吗?还是我没有检索服务器中的当前文件夹?

我会错过任何类型的支票吗?

最佳答案

找出问题所在。

DriveApp.getFoldersByName返回一个FolderIterator,所以之后我必须做一个额外的测试。

var folder = DriveApp.getFoldersByName(currentClient);
if(folder.hasNext()) {
    Logger.log('File already exists')
} else {
    var folder = DriveApp.createFolder(currentClient);
    Logger.log('New folder created!');
}


像这样完美地工作。

08-07 19:19