文件最后修改时间

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

Java 提供了多种内置方法,例如 lastModified()getLastModifiedTime(),用于获取文件的最后更新时间。我们可以使用 java.io 包中的 File 类或 java.nio 包中的 Files 类来检索文件的最后修改时间。在本实验中,我们将使用 java.io.File 类的 lastModified() 方法和 java.nio.Files 类的 getLastModifiedTime() 方法来获取文件的最后更新时间。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("`Java`")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["`Object-Oriented and Advanced Concepts`"]) java(("`Java`")) -.-> java/FileandIOManagementGroup(["`File and I/O Management`"]) java(("`Java`")) -.-> java/ConcurrentandNetworkProgrammingGroup(["`Concurrent and Network Programming`"]) java(("`Java`")) -.-> java/SystemandDataProcessingGroup(["`System and Data Processing`"]) java/ObjectOrientedandAdvancedConceptsGroup -.-> java/date("`Date`") java/FileandIOManagementGroup -.-> java/files("`Files`") java/FileandIOManagementGroup -.-> java/create_write_files("`Create/Write Files`") java/FileandIOManagementGroup -.-> java/io("`IO`") java/FileandIOManagementGroup -.-> java/nio("`NIO`") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("`Working`") java/SystemandDataProcessingGroup -.-> java/system_methods("`System Methods`") subgraph Lab Skills java/date -.-> lab-117407{{"`文件最后修改时间`"}} java/files -.-> lab-117407{{"`文件最后修改时间`"}} java/create_write_files -.-> lab-117407{{"`文件最后修改时间`"}} java/io -.-> lab-117407{{"`文件最后修改时间`"}} java/nio -.-> lab-117407{{"`文件最后修改时间`"}} java/working -.-> lab-117407{{"`文件最后修改时间`"}} java/system_methods -.-> lab-117407{{"`文件最后修改时间`"}} end

创建一个 Java 文件

~/project 目录下创建一个名为 LastModifiedTime.java 的 Java 文件。在终端中使用以下命令:

touch ~/project/LastModifiedTime.java

导入必要的库

导入 java.io.Filejava.io.IOExceptionjava.nio.file.Filesjava.nio.file.Pathjava.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 值表示。我们可以使用 java.time.Instant 类的 Instant.ofEpochMilli() 方法将 long 值转换为日期和时间。

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 值转换为日期和时间。

您可能感兴趣的其他 Java 教程