DriveApp.GetFoldersByName() 总是返回 true
DriveApp.GetFoldersByName() always returning true
我一直在研究 google 驱动脚本。
我需要从电子表格创建一个文件夹,以防不存在具有该名称的文件夹。
但问题是它说该文件夹存在,即使它不存在。
检查在 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
returns a 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!');
}
它像这样完美地工作。
我一直在研究 google 驱动脚本。
我需要从电子表格创建一个文件夹,以防不存在具有该名称的文件夹。
但问题是它说该文件夹存在,即使它不存在。
检查在 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
returns a 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!');
}
它像这样完美地工作。