文件在 Java 中的最后修改时间
原文:https://www.studytonight.com/java-examples/files-last-modified-time-in-java
在这篇文章中,我们将使用 Java 代码获取文件的最后修改时间。上次修改时间表示上次文件更新的时间。
Java 提供lastModified()
或getLastModifiedTime()
等内置方法获取文件上次更新时间。我们可以使用 java.io 包的File
类或者 java.nio 包的Files
类。您可以自行决定使用哪个软件包。
lastModified()
方法属于File
类,返回一个时间。而getLastModifiedTime()
方法属于Files
类,以Long
类型返回时间,可以进一步转换为日期时间。
举例时间:
让我们创建一个示例来获取文件的最后修改时间。这里,我们使用的是 File 类的lastModified()
方法,它以Long
类型返回时间,所以我们需要显式地将其转换为时间,就像我们在下面的例子中所做的那样。
import java.io.File;
import java.io.IOException;
import java.time.Instant;
public class Main {
public static void main(String[] args) throws IOException{
try {
File file = new File("abc.txt");
long time = file.lastModified(); // file modified time
System.out.println(time);
// Convert long time to date time
System.out.println(Instant.ofEpochMilli(time));
}catch(Exception e) {
System.out.println(e);
}
}
}
1592912186419 2020-06-23t 11:36:26.419 z
另一个例子的时间:
让我们举另一个例子来获得文件的最后修改时间。这里我们使用的是Files
类的getLastModifiedTime()
方法,返回带有日期的时间。见下面的例子。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.FileTime;
public class Main {
public static void main(String[] args) throws IOException{
try {
Path path = Paths.get("abc.txt");
FileTime time = Files.getLastModifiedTime(path); // file modified time
System.out.println("Last modified time of the file:");
System.out.println(time);
}catch(Exception e) {
System.out.println(e);
}
}
}
文件上次修改时间: 2020-06-23T11:36:26.419959Z