今回のメソッドは、Googleドライブでファイルの編集日時を取得するgetLastUpdated()メソッドの使い方をご紹介します。ファイルを編集すると更新時間が随時変更されていきますが、このメソッドを使うことで最終更新日時を取得することができます。更新日時がわかることで、期間を限定してある特定の期間に編集されたフォルダやファイルを取得したりすることができます。
使い方はgetDateCreated()メソッドと同じですので、簡単に使えるようになると思います。
フォルダ/ファイルの最終更新日時を取得する— getLastUpdated()
今回のメソッドは、引数の指定もなく、とてもシンプルに利用できますので、すぐに使い方が覚えられると思います。
今回のメソッドもFolderクラス/Fileクラスどちらにも存在します。使い方はどちらも同じで、Folderオブジェクトに対して実行するか、Fileオブジェクトに対して実行するかの違いしかありません。
『 関連するメソッド 』
合わせて覚えたいフォルダやファイル操作に関するメソッド
getLastUpdated()のサンプルコード
引数に入れる値
引数の指定なし
サンプルコード
//Googleドライブ上のフォルダ/ファイルの最終更新日時を取得するコード
function sampleCodeForgetLastUpdatedOnGoogleDriveFilesAndFolders() {
var myDrive = DriveApp.getRootFolder();
var files = myDrive.getFiles();
var folders =myDrive.getFolders();
console.log("『 ファイルの最終更新日時取得開始 』");
while (files.hasNext()) {
var file = files.next();
var name = file.getName();
var lastUpdatedDate = Utilities.formatDate(file.getLastUpdated(), "JST", "yyyy年MM月dd日 HH:mm:ss");
console.log("ファイル名: " + name + "\n作成日: " + lastUpdatedDate);
}
console.log("『 フォルダの最終更新日時取得開始 』");
while (folders.hasNext()) {
var folder = folders.next();
var name = folder.getName();
var lastUpdatedDate = Utilities.formatDate(folder.getLastUpdated(), "JST", "yyyy年MM月dd日 HH:mm:ss");
console.log("フォルダ名: " + name + "\n作成日: " + lastUpdatedDate);
}
}
変数の説明
myDrive = マイドライブを代入
files = マイドライブのファイルを代入
folders = マイドライブのフォルダを代入
name = フォルダ/ファイルの名前を代入
lastUpdatedDate = フォルダ/ファイルの最終更新日時を代入
サンプルコードにアクセスして関数名を選択後に▶ボタンをクリックしてプログラムを実行してみましょう。ログにはマイドライブにあるフォルダやファイルの名前と最終更新日時を出力するようにしておきました。
ちなみに、ファイルを作成してから何も編集など行わなかった場合は当然ながらgetDateCreatedを実行した場合と結果は同じ日時が取得されます。
たくさんファイル数があっても一気に情報が取得できますので、ぜひコードを参考にしてみてください。フォルダやファイル名やID、詳細情報を取得するなどの処理を一気に実行したい場合も、上記サンプルコードの一部を変更するだけで対応することができますので、ぜひご活用ください。
サンプルコードの中ではイテレータという処理を実行していますが、イテレータについて仕組みを知りたい場合は
を参考にしてみてください。
まとめ
今回はGoogleドライブのフォルダやファイルの最終更新日時を取得するgetLastUpdated()メソッドのご紹介をしました。最終更新日時で処理を分けたり、表示順をソートしたりするときに活用してください。