DriveApp parent folder

2020-02-15 05:35发布

There is something i just don't understand about the logic in DriveApp scripting..the most basic example:

var driveFile = DriveApp.getFileById(id); // makes sense, i can access the file
var name = driveFile.getName(); // makes sense, i easily get the file name

var parentFolder = driveFile.getParents(); // i get folderIterator 
var parentFolderName = // how do i get this???

If i look the documentation folder iterator only lets me access this:

  1. getContinuationToken() String Gets a token that can be used to resume this iteration at a later time.
  2. hasNext() Boolean Determines whether calling next() will return an item.
  3. next() Folder Gets the next item in the collection of files or folders.

How do i get the name for that specific parent folder?

1条回答
Evening l夕情丶
2楼-- · 2020-02-15 05:41

because files can have more than one parent folder the parents are returned like a list or array, even if there is only one parent folder, and you have to cycle through to retrieve individual parents

// Log the name of every parent folder
 var driveFile = DriveApp.getFileById(id); 
 var parentFolder = driveFile.getParents();
 while (parentFolder.hasNext()) {
   var folder = parentFolder.next();
   Logger.log(folder.getName());
 }

if you were sure that the file has only one parent you could do something like:

var parentFolder = driveFile.getParents();
var folderName =parentFolder.next().getName()
查看更多
登录 后发表回答