google-apps-script - 每个 GScript 移动一个文件
问题描述
我尝试将文件从我的根文件夹移动到定义的文件夹中。但是我的脚本向我发送了错误:“异常:参数(字符串)与 DriveApp.File.moveTo 的方法签名不匹配。” - 但为什么?
有人给我小费吗?
function myMoveFile() {
var myFolderID = DriveApp.searchFolders("Title Contains 'Final_Folder'").next().getId();
var myNewDoc = DocumentApp.create("Doc per Script");
var myFileID = myNewDoc.getId();
DocumentApp.openById(myFileID).getBody().appendParagraph("TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT");
Logger.log(myFolderID);
DriveApp.getFileById(myFileID).moveTo(myFolderID);
}
谢谢
解决方案
destination
ofmoveTo(destination)
是不是文件夹 ID 的文件夹对象。我认为这可能是您的问题的原因。那么下面的修改呢?
修改后的脚本:
function myMoveFile() {
var myFolder = DriveApp.searchFolders("Title Contains 'Final_Folder'").next();
var myNewDoc = DocumentApp.create("Doc per Script");
var myFileID = myNewDoc.getId();
DocumentApp.openById(myFileID).getBody().appendParagraph("TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT");
Logger.log(myFolder.getId());
DriveApp.getFileById(myFileID).moveTo(myFolder);
}
参考:
添加:
关于以下第二个问题,
我的意图是通过 GScript 创建一个文件,然后将它移动到一个定义的文件夹(例如“Final_Folder”)。我要移动 2 个同名文件夹,以避免将文件移动到错误的文件夹。
在这种情况下,作为一种解决方法,使用星号怎么样?在 Google 云端硬盘中,可以将星号添加到文件和文件夹中。在您的情况下,当存在相同的文件夹并且您想将文件移动到其中一个文件夹时,请在您要使用的特定文件夹中添加一个星号。我认为这可能是从相同文件夹名称中识别特定文件夹的解决方法。
示例脚本:
在运行此脚本之前,请在您要使用的文件夹中添加一个星号。并且,运行这个脚本。这样,文件将移动到已加星标的文件夹中。这样,您可以使用相同文件夹名称中的特定文件夹。
function myMoveFile() {
var folders = DriveApp.searchFolders("Title Contains 'Final_Folder'");
while (folders.hasNext()) {
var myFolder = folders.next();
if (myFolder.isStarred()) {
var myNewDoc = DocumentApp.create("Doc per Script");
var myFileID = myNewDoc.getId();
DocumentApp.openById(myFileID).getBody().appendParagraph("TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT");
Logger.log(myFolder.getId());
DriveApp.getFileById(myFileID).moveTo(myFolder);
break;
}
}
}
推荐阅读
- postgresql - 在 Kubernetes 中部署 postgres
- python - “或”在 python lambda 中表现异常
- java - 线程“主”java.lang.NoSuchMethodError 中的异常:'void Car.setYear(java.lang.Integer)'
- c - 有没有办法加速 openMP
- machine-learning - 是否可以在训练之前和训练期间修改 OpenAI 健身房状态?
- django - 一个 Django 模板中的多个表单
- oracle - 在这个简单的组中,错误的起别名是错误的原因吗?
- svg - 在 SVG 绘图中将多个子绘图缩放为相同大小
- python - 如何拆分列表并获取python中的最后一个值
- java - 如何在 Java 中使用 Webclient 添加 CA 证书和客户端证书