为何Google Apps Script中addFile方法显示删除线?功能正常是否需修改?
关于DriveApp.addFile方法显示删除线的问题
原因说明
你看到的删除线是因为addFile()和removeFile()方法已经被Google标记为弃用(deprecated)。这类标记意味着Google不再推荐使用这些方法,并且会在未来的某个版本中彻底移除它们,目前只是保留兼容性让旧脚本还能正常运行。
当前状态与风险
你的脚本现在能正常运行,是因为Google还没切断这些弃用方法的支持,但如果未来Google更新Apps Script的API,这些方法失效后,脚本就会报错无法执行。建议现在就改成推荐的新方法,避免后续出现问题。
替代方案:使用moveTo()方法
Google推荐用File.moveTo()方法替代原来的“addFile+removeFile”操作,这个方法可以直接将文件从原文件夹移动到目标文件夹,代码更简洁,逻辑也更直观。
修改后的代码如下:
function MoveRecordingsToFolders() { var sourceFolder = DriveApp.getFolderById('folderid_is_placed_here'); // 录音文件所在的原文件夹 var files = sourceFolder.getFiles(); while (files.hasNext()) { var file = files.next(); // 加上var声明变量,避免全局变量污染 if (file.getName().indexOf("CAD242 #") === 0) { var targetFolder = DriveApp.getFolderById('folderid_of_destination'); file.moveTo(targetFolder); // 直接完成移动操作 } } }
代码改动说明
- 给
file加上var声明,避免未声明的全局变量引发潜在问题 - 用
file.moveTo(targetFolder)一行代码替代原来的两行操作,效果完全一致,都是将文件从原文件夹移至目标文件夹 - 变量名改为
sourceFolder和targetFolder,提升代码可读性
内容的提问来源于stack exchange,提问作者Joseph Brown
相关产品推荐
相关产品推荐

