在子文件夹中创建一个简单的Google文档文件

时间:2017-06-13 20:44:49

标签: google-drive-api

我是Scripting的初学者,我尝试在子文件夹中创建一个简单的Google文件:

function createFilesInSubFolder() {
    //This creates the Workingfolder
    var folder = DriveApp.createFolder('MyWorkingFolder');
    //This creates a file in the folder
    var file = folder.createFile('FileName','Text in the File',MimeType.GOOGLE_DOCS);
    //Mime.Typen: https://developers.google.com/apps-script/reference/base/mime-type
}

脚本给了我这个错误:

Ungültiges Argument: file.contentType (Zeile 6, Datei "Code")

当我创建minetype JPEG或PLAIN_TEXT时,脚本可以正常工作。在子文件夹中直接创建Google文档的诀窍在哪里?要在root文件夹中创建文件,请使用命令DocumentApp.create('GoogleStandardFileType')

1 个答案:

答案 0 :(得分:0)

如果是创建Google文档,则会使用DocumentApp或Drive API。创建Google文档时,有两种方法可以在子文件夹中创建它。

方法1

在此方法中,文档由DocumentApp.create()创建,并将父项(文件夹)从初始文件夹(根文件夹)更改为MyWorkingFolder

脚本:

var doc = DocumentApp.create('FileName');
doc.getBody().editAsText().insertText(0, 'Text in the File');
var file = DriveApp.getFileById(doc.getId());
var destfolder = DriveApp.createFolder('MyWorkingFolder');
var sourcefolder = file.getParents().next();
destfolder.addFile(file);
sourcefolder.removeFile(file);

方法2

在此方法中,文档由Drive API创建。在这种情况下,创建文档时,文档将直接创建到子文件夹MyWorkingFolder

脚本:

DocumentApp.openById(Drive.Files.insert({
    "title":    "FileName",
    "mimeType": "application/vnd.google-apps.document",
    "parents":  [{"id": DriveApp.createFolder('MyWorkingFolder').getId()}]
}).id).getBody().editAsText().insertText(0, 'Text in the File');

注意:

使用Drive API时,请按照以下步骤在Google API控制台上启用Drive API。

  1. 在脚本编辑器中,选择Resources>云平台项目
  2. 在对话框底部,点击Google API控制台的链接。
  3. 在控制台中,点击过滤器框并输入API名称的一部分" Drive API",然后在看到后点击该名称。
  4. 在下一个屏幕上,单击“启用API”。
  5. 关闭开发人员控制台并返回脚本编辑器。在对话框中单击“确定”。
  6. 如果我误解了你的问题,我很抱歉。