繁体   English   中英

检查父文件夹中是否存在具有特定名称的文件夹

[英]Check if there exists a Folder with a specific Name in a Parent Folder

我想在父文件夹中创建一个新文件夹,但前提是它不存在。

我创建了一个 function 来检查 parent_folder 中是否存在名为“folder_name”的文件夹。 如果 parent_folder 中没有带有“folder_name”的文件夹,我希望它返回false ,因此我稍后可以在 if 语句中使用。

function checkFolder(parent_folder, folder_name) {
  var folders_in_parent = parent_folder.getFolders();
  while (folders_in_parent.hasNext()) {
    var folder = folders_in_parent.next();
    if(folder_name == folder.getName()) {
      return true;
    }
  }
  return false;
}

请注意,参数“parent_folder”不是文件夹名称,而是我使用文件夹 ID 获得的文件夹本身:

var parentFolderID = "ID_goes_here";
var parentFolder = DriveApp.getFolderById(parentFolderID);

然后,我使用 checkFolder function 检查新文件夹是否存在; 如果没有,我创建它:

var newFoldercheck = checkFolder(parentFolder,"New Folder");
 
if (newFoldercheck === false) {
  var newFolder = campusFolder.createFolder("New Folder");
}

每次我运行我的脚本时,它总是会创建新文件夹,即使它已经存在于父文件夹中。 拜托,你能帮我找出我做错了什么吗?

我认为像这样进行比较可能会更好。 我认为它使您有更好的机会找到看起来相似但不完全相同的匹配项。

function checkFolder(parent_folder, folder_name) {
  var folders_in_parent=parent_folder.getFolders();
  while (folders_in_parent.hasNext()) {
    var folder = folders_in_parent.next();
    if(folder_name.trim() == folder.getName().trim()) {
      return true;
    }
  }
  return false;
}

暂无
暂无

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

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