我需要获取指定文件夹中文件夹的名称和URL。
这是我的尝试:
// set the folder to pull folder names from
var DDparentid = "IDhere";
var DDparent = DriveApp.getFolderById(DDparentid);
var DDfolders = DDparent.getFolders();
// iterate through folders in the folder
while (DDfolders.hasNext()) {
var folder = DDfolders.next();
// get folder name
Logger.log(folder.getName());
var DDnames = folder.getName();
// get the url
Logger.log(folder.getUrl());
var DDURLs = folder.getUrl();
}
这适用于获取文件URL,但我认为文件夹的处理方式不同,并且getfolder的使用方式不同。我收到一条错误,指出字符串不适合DriveApp.getfolder()。我应该如何使用getfolder?
编辑:运行,buit实际上并没有提取URL或文件夹名称。两个变量都是未定义的,但没有错误。
答案 0 :(得分:1)
下面列出了指定文件夹的所有子文件夹名称和URL:
function listSubFoldersInFolder(id) {
var dfolder = DriveApp.getFolderById('ENTER_PARENT_FOLDER_ID_HERE');
var contents = dfolder.getFolders();
var file;
var name;
var sheet = SpreadsheetApp.getActiveSheet();
var link;
sheet.clear();
sheet.appendRow(["Name", "Link"]);
while(contents.hasNext()) {
file = contents.next();
name = file.getName();
link = file.getUrl();
data = [name, link]
sheet.appendRow(data);
}
};
答案 1 :(得分:0)
你可以试试这个:
var parentFolderId = "xxxxxxxIDxxxxxxx";
var parentFolder = DriveApp.getFolderById(parentFolderId);
var folders = parentFolder.getFolders();
var folder;
// iterate through folders in the folders fetched from parent folder
while (folders.hasNext()) {
folder = folders.next();
// get folder name
Logger.log(folder.getName());
// get the url
Logger.log(folder.getUrl());
}
这是一个未经测试的代码,如果出现任何问题,请与我们联系。我们很乐意帮助我们。
由于