3

我正在尝试在变量 chapterOne 中保存的特定文件夹中创建一个谷歌文档。

我用谷歌搜索和搜索,我发现最接近答案的是这里的代码:

function Test() {
  DocsList.createFolder('Folder1').createFolder('Subfolder1').createFile('File1', 'Empty');
}

但问题是它创建了一个文件,而不是谷歌文档。我正在寻找的东西会以某种方式调用 DocumentApp ......

任何帮助将不胜感激!

~诺艾尔

4

3 回答 3

4

DocsList 现在已贬值,因此对于可能遇到此线程的任何人,这是一个更新的答案:

function createDoc() {
  // Creates doc in root directory
  var doc = DocumentApp.create('MyDocument');
  var docFile = DriveApp.getFileById(doc.getId());

  // Copy doc to the directory we want it to be in. Delete it from root.
  DriveApp.getFoldersByName('Subfolder1').next().addFile(docFile);
  DriveApp.getRootFolder().removeFile(docFile);

  // Returns the ID of the newly created Doc
  return DriveApp.getFilesByName('MyDocument').next().getId();
}

这是我找到此答案的帖子的链接:直接在 Google Drive 文件夹中创建 Google Doc 文件

于 2019-07-16T15:13:02.937 回答
1

您可能希望使用 DocumentApp 创建文档,然后将其移动到不同的文件夹。

var docName = "YOUR_DOC_NAME";
var doc = DocumentApp.create(docName); //this creates the doc in the root folder
var file = DocsList.getFileById(doc.getId());
file.removeFromFolder(DocsList.getRootFolder());
file.addToFolder(DocsList.getFolder("path/to/folder"));
于 2013-03-03T00:08:01.750 回答
0

我无需在您的 Google Drive 根目录中创建 Google Doc,然后移至特定文件夹,而是能够直接在特定 Drive 文件夹中创建文件。但为此,我在其他地方维护了一个空的 Google 文档。

function createNewDocInDriveFolder(){
    var emptyDocId = "XXX-XXXXXvqadhYQiYoAno8aam2HJhRNxgO84qF9VXXXX";
    var destFolderId = "XXXXPsu8uKcmkhJ1-oiSRNzE1-XXXX_XX"; 
    var destFolder = DriveApp.getFolderById(destFolderId);
    var newDocFile = DriveApp.getFileById(emptyDocId).makeCopy("New Doc", destFolder);     
    return DocumentApp.openById(newDocFile.getId());
}
于 2021-10-12T05:55:18.893 回答