【发布时间】:2018-02-16 17:38:42
【问题描述】:
我在 Folder 类的 'getFoldersByName()' 方法中遇到了一个问题。如果我将西里尔字符串作为参数传递,它会返回 FolderIterator 的实例,但调用 'next()' 方法总是会引发错误('iterator已经结束了')。
下面的函数在父文件夹中找到具有给定名称的子文件夹并返回子文件夹。如果子文件夹已经存在,函数将返回它而不是创建一个新的。不幸的是,这只适用于拉丁文的子文件夹名称。
function findSubfolder(){
var subfolderName = "Папка папка"; //string containing cyrillic characters
var parentFolder = DriveApp.getFolderById(parentFolderId);
var iterator = parentFolder.getFoldersByName(subfolderName);
var folder = (iterator.hasNext()) ? iterator.next() : parentFolder.createFolder(subfolderName);
return folder;
}
值得一提的是,当我检查 (existingSubfolder.getName() == subfolderName) 时,它会返回“true”。
【问题讨论】:
标签: javascript google-apps-script