folder.getFilesByName(name);
잠재적으로 하나 개 이상의 파일을 검색 명령은 (이이 이름을 말할 - 그것을 대해서 getFile 의) 그래서 당신에게 당신이 while 루프으로 분석 할 필요가 파일 반복자을 제공합니다.
당신이이 이름을 가진 적어도 하나 개의 파일이 있음을 확신하는 경우,이 같은 지저분한 코드로 루프를 방지 할 수 있습니다
var file = folder.getFilesByName(name).next();
다음으로 ID를 검색 :
var id = file.getId()
- 편집 :
파일을 검색 할 수 있는지 확실하지 않은 경우 (파일 이름이 존재하지 않거나 이름이 ....) 모르는 경우 파일 반복기의 결과를 확인해야합니다 .
var file = folder.getFilesByName(name);
작성하는 것을 선호 : 대신 작성
var files = folder.getFilesByName(name); // you could have zero or more than one file
을 그리고 당신이 할 수있는 동안 해당 이름을 가진 두 개 이상의 파일이 믿는 경우 루프 :
var out = [];
while(files.hasNext()) {
var file = files.next();
out.push(file.getId());
Logger.log(file.getId());
}
return out;
가 또는 파일이 하나 또는 0 인 경우 간단한 작업 만 수행하면됩니다.
if (files.hasNext()) {
var file = files.next();
Logger.log(file.getId());
return file.getIt(); // eventually
}
else {
Logger.log("there is no file with that name");
return "no id"; // eventually
}
'.next()'와'var id = file.getId()'를 추가 할 때'다음 객체를 검색 할 수 없습니다 : 반복기가 끝났습니다. '라는 메시지가 나타납니다. while 루프는 어떻게 생겼을까요? 'while (file.hasNext()) {파일 아이디 가져 오기}'? – user4411473
그 이름을 가진 파일이 없음을 의미합니다 (0 결과). 내가 할 일을 보여주기 위해 소식을 업데이트 할 것입니다. – Harold