获取文件的上次访问时间

发布于 2024-07-21 05:15:24 字数 258 浏览 12 评论 0原文

我知道使用 File 对象我们可以获得 File 的最后修改时间(即 File.lastModified())。 但是,我的要求是获取 Java 中文件上次访问时间。 我怎样才能得到它?

I know that using File object we can get the last modified time for a File (i.e. File.lastModified()). But, my requirement is to get the last accessed time for a File in Java. How do I get it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

鸵鸟症 2024-07-28 05:15:24

您将需要使用新的文件 I/O API (NIO2) 是 Java 7 附带的。它有一个方法 lastAccessTime() 用于读取上次访问时间。

以下是一个用法示例:

Path file = ...
BasicFileAttributes attrs = Files.readAttributes(file, BasicFileAttributes.class);
FileTime time = attrs.lastAccessTime();

有关详细信息,请参阅管理元数据 Java 教程。

You will need to use the new file I/O API (NIO2) which comes with Java 7. It has a method lastAccessTime() for reading the last access time.

Here is a usage example:

Path file = ...
BasicFileAttributes attrs = Files.readAttributes(file, BasicFileAttributes.class);
FileTime time = attrs.lastAccessTime();

For more information see Managing Metadata in the Java Tutorial.

伪装你 2024-07-28 05:15:24

您无法使用纯 Java 来做到这一点,您需要使用 JNI 来访问平台特定的数据,例如这个或使用 核心 Java 库的扩展,如下所示:

javaxt.io.File file = new javaxt.io.File("path");
file.getLastAccessTime();

或者,如果您有 Java 7,请遵循 Esko 的答案并使用 NIO。

You can't do it with plain Java, you'll need to use JNI to access the platform specific data such as this or use extensions to the core Java library like the following:

javaxt.io.File file = new javaxt.io.File("path");
file.getLastAccessTime();

Or, if you have Java 7, go with Esko's answer and use NIO.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文