驱动API:https://developers.google.com/drive/v2/reference/files/list https://developers.google.com/drive/v2/reference/files/list
我试图获取我拥有的电子表格的 id,但 Logger.log() 返回多个 id,而不仅仅是一个。我认为它是从谷歌驱动器中最近的部分获取同名的文件。
我不知道如何解决这个问题,任何帮助将不胜感激。
有没有办法只使用驱动器 API 搜索文件夹内的文件?或者我如何排除最近部分中的文件并仅搜索驱动器中的文件?
代码片段:
//get spreadsheet
var nameId;
var allFiles = Drive.Files.list({
q: "title='" + name + "' and trashed=false"
}).items;
for (var i = 0; i < allFiles.length; i++)
{
if (allFiles[i].title == name)
{
Logger.log("true");
nameId = allFiles[i].id;
Logger.log("returnTemplatedTable -- name id: " + nameId);
}
else
{
Logger.log("false");
}
}
var spreadsheet = SpreadsheetApp.openById(nameId).getActiveSheet();
这是我将文件移动到文件夹的代码片段:
//move spreadsheet to folder
Drive.Files.update({
"parents": [
{
"id": folderId
}
]
}, fileId);
但我怎样才能搜索文件夹呢?
var list = Drive.Files.list({
"folderId": folderId,
q: "title='" + name + "' and trashed=false"
}).items;
for (var i = 0; i < list.length; i++)
{
Logger.log("id: " + list[i].id);
}
这使用驱动器 api 来查找文件夹中所有文件的名称。
function findFilesInFolder() {
var folderId = 'folderId'
//searches for children of a folder
var childrenData = Drive.Children.list(folderId)
var children = childrenData.items;
//loops through the children and gets the name of each one
for (var i = 0; i < children.length; i++){
var id = children[i].id;
var file = Drive.Files.get(id);
Logger.log(file.title)
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)