Javascript 检查Google Drive文件夹中的文件是否已经存在并且超过一定大小
我试图遍历一个类代码列表,并检查在特定的GoogleDrive文件夹中是否已经存在具有该名称的文件 我有它的工作,但它是非常缓慢的,我想我一定是错过了一个技巧。有107个唯一的类代码,我的代码一次一个。我不知道是否有办法获取文件夹中所有文件的名称并进行检查 这是我的密码:Javascript 检查Google Drive文件夹中的文件是否已经存在并且超过一定大小,javascript,jquery,google-apps-script,google-sheets,Javascript,Jquery,Google Apps Script,Google Sheets,我试图遍历一个类代码列表,并检查在特定的GoogleDrive文件夹中是否已经存在具有该名称的文件 我有它的工作,但它是非常缓慢的,我想我一定是错过了一个技巧。有107个唯一的类代码,我的代码一次一个。我不知道是否有办法获取文件夹中所有文件的名称并进行检查 这是我的密码: function ClassDataPacksProgress() { var dateStamp=Utilities.formatDate(new Date(), Session.getScriptTimeZone(),
function ClassDataPacksProgress() {
var dateStamp=Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "dd/MM/yyyy")
var ss=SpreadsheetApp.getActive();
var foldersave=DriveApp.getFolderById(folderkeygoeshere);
var fetch='https://docs.google.com/spreadsheets/d/'+mainSSKey+'/export?format=pdf&size=A4&portrait=false'
var classCodeSheet=ss.getSheetByName('ClassCodes')
var maxRowNum=classCodeSheet.getLastRow()+1;
var dataRange=classCodeSheet.getRange(1, 1, maxRowNum, 1);
var data=dataRange.getValues();
var count = 0
for (var r=0;r<data.length-1;r++){
var classCode = data[r][0]
var name=classCode + " " + dateStamp + ".pdf";
var filechk = DriveApp.getFilesByName(name);
var chk=filechk.hasNext();
if (chk === false) {
}
else {
var file = filechk.next()
if (file.getSize() > 3000){
count = count + 1
}
}
}
}
函数classDataPackProgress(){
var dateStamp=Utilities.formatDate(新日期(),会话.getScriptTimeZone(),“dd/MM/yyyy”)
var ss=SpreadsheetApp.getActive();
var foldersave=DriveApp.getFolderById(folderKeyGoesher);
var fetch=https://docs.google.com/spreadsheets/d/“+mainskey+”/export?format=pdf&size=A4&trait=false”
var classCodeSheet=ss.getSheetByName('ClassCodes'))
var maxRowNum=classCodeSheet.getLastRow()+1;
var dataRange=classCodeSheet.getRange(1,1,maxRowNum,1);
var data=dataRange.getValues();
变量计数=0
对于(var r=0;r 3000){
计数=计数+1
}
}
}
}
任何帮助都将是惊人的
谢谢搜索标题中带有日期戳和“pdf”的所有文件:
function ClassDataPacksProgress() {
//Your code at top
var allFiles,file;
allFiles = foldersave
.searchFiles('title contains "' + dateStamp + '" and title contains ".pdf"');
while (allFiles.hasNext()) {
file = files.next();
Logger.log(file.getName());
if (file.getSize() > 3000){
count = count + 1
}
}
}
不幸的是,目前没有办法按文件大小进行搜索。您当前的代码不是按文件夹搜索,而是搜索整个驱动器