ファイルの最終更新日時

JavaBeginner
オンラインで実践に進む

はじめに

Java には、ファイルの最終更新日時を取得するためのlastModified()getLastModifiedTime()などのいくつかの組み込みメソッドが用意されています。java.ioパッケージのFileクラスまたはjava.nioパッケージのFilesクラスのいずれかを使用して、ファイルの最終更新日時を取得することができます。この実験では、java.io.FileクラスのlastModified()メソッドとjava.nio.FilesクラスのgetLastModifiedTime()メソッドを使用して、ファイルの最終更新日時を取得します。

Java ファイルを作成する

~/projectディレクトリにLastModifiedTime.javaという名前の Java ファイルを作成します。ターミナルで以下のコマンドを使用します。

touch ~/project/LastModifiedTime.java

必要なライブラリをインポートする

java.io.Filejava.io.IOExceptionjava.nio.file.Filesjava.nio.file.Path、およびjava.nio.file.attribute.FileTimeライブラリをインポートします。

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.FileTime;

lastModified() メソッドを使ってファイルの最終更新日時を取得する

lastModified() メソッドは java.io.File クラスに属し、ファイルの最終更新日時を long 型の値として返します。long 型の値を日付と時刻に変換するには、java.time.Instant クラスの Instant.ofEpochMilli() メソッドを使用できます。

Path filePath = Paths.get("path/to/file");
File file = new File(filePath.toString());
long lastModifiedTime = file.lastModified();
System.out.println("Last modified time: " + Instant.ofEpochMilli(lastModifiedTime));

path/to/file を実際のファイルパスに置き換えてください。

上記のコードをターミナルで実行した後、以下のコマンドを使用します。

javac LastModifiedTime.java && java LastModifiedTime

getLastModifiedTime() メソッドを使ってファイルの最終更新日時を取得する

getLastModifiedTime() メソッドは java.nio.file.Files クラスに属し、ファイルの最終更新日時と日付と時刻を返します。

Path filePath = Paths.get("path/to/file");
FileTime lastModifiedTime = Files.getLastModifiedTime(filePath);
System.out.println("Last modified time: " + lastModifiedTime);

path/to/file を実際のファイルパスに置き換えてください。

上記のコードをターミナルで実行した後、以下のコマンドを使用します。

javac LastModifiedTime.java && java LastModifiedTime

まとめ

この実験では、Java コードを使ってファイルの最終更新日時を取得する方法を学びました。java.io.File クラスの lastModified() メソッドと java.nio.Files クラスの getLastModifiedTime() メソッドを使って、ファイルの最終更新日時を取得しました。また、java.time.Instant クラスの Instant.ofEpochMilli() メソッドを使って、long 型の値を日付と時刻に変換する方法も学びました。