Вообще, все началось с того, что надо было сохранять приатаченные файлы, полученные через GmailApp на Google Drive
Все шло хорошо, пока не появилась необходимость перезаписывать файл, если он уже есть на диске.
Если просто сохранять, то файлы с одинаковыми именами сохраняются как FileName(n-1).ext - где n - число полученных файлов с одним и тем же именем.
Соответственно, появилась необходимость определить, присутствует ли файл с определенным именем на диске и при положительном результате удалить его, а новый сохранить.
И вот что обнаружилось при поиске файлов с кириллицей.
function startFindFile() {
var folder = DriveApp.getFolderById(DriveApp.getFoldersByName("prices").next().getId());
var fileNameCyr1 = "Прайс1_Склад ЦС.xls";
var fileNameCyr2 = "прайс1_склад цс.xls";
var fileNameEng = "Price.txt";
Logger.log("List all files:" );
var files = folder.getFiles();
findFile(files);
Logger.log("Find files: " + fileNameEng );
files = folder.getFilesByName(fileNameEng);
findFile(files);
Logger.log("Find files: " + fileNameCyr1 );
files = folder.getFilesByName(fileNameCyr1);
findFile(files);
Logger.log("Find files: " + fileNameCyr2 );
files = folder.getFilesByName(fileNameCyr2);
findFile(files);
}
function findFile(files) {
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName() + " " + file.getId());
}
}
Что имеем в результате.
getFilesByName ищет файлы на кириллице только в нижнем регистре?
Вопрос: как найти файл на Google Drive в имени которого есть буквы на кириллице в верхнем регистре?