Google apps script 错误:无法检索下一个对象:迭代器已到达末尾。createFolder@Function:createFolder.gs:8
我使用了在SO上看到的一个代码,将文档保存到Google Drive中的特定文件夹中,但按日期(yyy-MM-DD)。我已经运行了这个脚本,但我一直收到上面的消息。我试着查看代码,但看不出哪里出了问题-有人能帮我吗?非常感谢你Google apps script 错误:无法检索下一个对象:迭代器已到达末尾。createFolder@Function:createFolder.gs:8,google-apps-script,Google Apps Script,我使用了在SO上看到的一个代码,将文档保存到Google Drive中的特定文件夹中,但按日期(yyy-MM-DD)。我已经运行了这个脚本,但我一直收到上面的消息。我试着查看代码,但看不出哪里出了问题-有人能帮我吗?非常感谢你 function createFolder(){ var formattedDate = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd"); var folderYe
function createFolder(){
var formattedDate = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd");
var folderYearDate = Utilities.formatDate(new Date(), "GMT", "yyyy");
var folderMonthDate = Utilities.formatDate(new Date(), "GMT", "MMMM");
var name = "XXXX" + formattedDate; //file name
var parent = DriveApp.getFolderById("XXXX").getFoldersByName("XXXX")
var yearExist = parent.next();
var yearFolders = yearExist.getFoldersByName(folderYearDate);
if(yearFolders.hasNext()){
var yearFolder = yearFolders.next()
Logger.log('Yes, there is a year folder')
//return;
} else {
var yearFolder = yearExist.createFolder(folderYearDate)
Logger.log('There was no year folder, but it was created.')
//return;
}
var monthFolders = yearFolder.getFoldersByName(folderMonthDate);
if(monthFolders.hasNext()){
var monthFolder = monthFolders.next()
Logger.log('Yes, there is a month folder.')
} else {
var monthFolder = yearFolder.createFolder(folderMonthDate);
Logger.log('There was no month folder, but it was created')
}
}
它失败是因为调用DriveApp.getFolderById(“XXXX”).getFoldersByName(“XXXX”)找不到任何文件夹。您应该始终在
.next()
之前调用.hasNext()
,查看是否存在任何问题(就像您在代码后面所做的那样)
它失败是因为调用DriveApp.getFolderById(“XXXX”).getFoldersByName(“XXXX”)找不到任何文件夹。您应该始终在
.next()
之前调用.hasNext()
,查看是否存在任何问题(就像您在代码后面所做的那样)
根据定义
next()
-获取文件或文件夹集合中的下一项。如果没有剩余项,则引发异常
要避免异常,必须使用hasNext
()确定调用next()是否将返回项
在代码中:
if(parent.hasNext()){
var yearExist = parent.next();
//some operations
}
工具书类
根据定义
next()
-获取文件或文件夹集合中的下一项。如果没有剩余项,则引发异常
要避免异常,必须使用hasNext
()确定调用next()是否将返回项
在代码中:
if(parent.hasNext()){
var yearExist = parent.next();
//some operations
}
工具书类
谢谢你们两位。我现在已经编辑了代码。我得到一个单独的错误,我打算发布另一个问题,因为它与这个问题无关。谢谢你们。我现在已经编辑了代码。我得到一个单独的错误,我打算发布另一个问题,因为它与这个问题无关。