在以下代码片段中,您将学习如何更新文件的上次修改日期/时间。要更新上次修改的日期/时间,可以使用该java.nio.file.Files.setLastModifiedTime()方法。此方法有两个参数。第一个参数是Path代表文件的对象。第二个参数是FileTime对象中新的修改日期。
让我们尝试下面的代码片段。
package org.nhooo.example.io; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.BasicFileAttributes; import java.nio.file.attribute.FileTime; public class SettingFileTimeStamps { public static void main(String[] args) throws Exception { String path = "D:/resources/data.txt"; Path file = Paths.get(path); BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class); System.out.println("lastModifiedTime() = " + attr.lastModifiedTime()); // 更新文件的上次修改时间。 long currentTimeMillis = System.currentTimeMillis(); FileTime fileTime = FileTime.fromMillis(currentTimeMillis); Files.setLastModifiedTime(file, fileTime); attr = Files.readAttributes(file, BasicFileAttributes.class); System.out.println("lastModifiedTime() = " + attr.lastModifiedTime()); } }
代码段的输出:
lastModifiedTime() = 2017-11-28T00:08:55.291206Z lastModifiedTime() = 2017-12-01T14:56:21.26Z