フォルダの存在確認・作成例
// 指定した名前のフォルダを取得
const folderName = "フォルダ名";
const folderIterator = DriveApp.getRootFolder().getFoldersByName(folderName);
let targetFolder;
if (folderIterator.hasNext()) {
// 存在する場合
} else {
// 存在しない場合作成
DriveApp.getRootFolder().createFolder(folderName);
}
フォルダ内ファイル取得(MIMEタイプで処理分岐例)
const folderId = 'フォルダID';
const files = DriveApp.getFolderById(folderId).getFiles();
while (files.hasNext()) {
let file = files.next();//ファイルを取得
if (file.getMimeType().match(/image/)) {// 画像ファイル指定例
// 処理
let filename = file.getName();//ファイル名
let fileid = file.getId();// ファイルID取得
}
console.log(files.next().getName());
}
子フォルダ取得例
//フォルダ名指定
const folderName = "フォルダ名";
const folders = DriveApp.getFoldersByName(folderName).hasNext();
const folder = folders.next().getFolders();
while (folder.hasNext()) {
console.log(folder.next().getName());
}
テキストファイル作成・追記例
const folderId = 'フォルダID';
const folder = DriveApp.getFolderById(folderId);
const msg1 = 'test1';
let msg2 = `
テキスト書き込み: ${msg1}
テスト
`;
const file = folder.createFile('filename.txt', msg2);
テキスト追記
const file = DriveApp.getFileById(fileID);
let text = file.getBlob().getDataAsString();
let newmsg = `
新規テキスト
`;
file.setContent(text + newmsg );
ファイル・フォルダの削除/復元
フォルダを削除(ゴミ箱へ移動)
const folderId = 'フォルダID';
const folder = DriveApp.getFolderById(folderId);
folder.setTrashed(true); // false で元に戻す
ファイルの削除(ゴミ箱へ移動)
const fileId = 'ファイルID';
const file = DriveApp.getFileById(fileId);
file.setTrashed(true);//false で元に戻す
ファイルの移動例
const fileID = '移動するファイルID';
const folderId = '移動先のフォルダID';
let file = DriveApp.getFileById(fileID);
let folder = DriveApp.getFolderById(folderId2);
file.moveTo(folder);