java如何获取文件的创建时间

在java.nio包下有一个文件基础属性类: BasicFileAttributes ,可以获取文件的基础属性如文件大小,文件最后修改时间,创建时间等等。
使用方法:
BasicFileAttributes attrs = Files.readAttributes(file, BasicFileAttributes.class);
其中file是一个Path类型变量,可以根据==Paths.get(file.getAbsolutePath());==此处的file就是我们常用的File文件类型了。

假如我想获取我电脑D盘下边的test.txt文件的创建时间,我可以写如下代码:

 public static void main(String[] args) throws IOException {
        // 指定自己的目标文件
        File file = new File("D:\\test.txt");
        // 根据文件的绝对路径获取Path
        Path path = Paths.get(file.getAbsolutePath());
        // 根据path获取文件的基本属性类
        BasicFileAttributes attrs = Files.readAttributes(path, BasicFileAttributes.class);
        // 从基本属性类中获取文件创建时间
        FileTime fileTime = attrs.creationTime();
        // 将文件创建时间转成毫秒
        long millis = fileTime.toMillis();
        SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
        Date date = new Date();
        date.setTime(millis);
        // 毫秒转成时间字符串
        String time = dateFormat.format(date);
        System.out.println(time);

运行输出结果是:

2022-08-23 09:30:39

查看创建的时间:
在这里插入图片描述
两者时间一致,搞定!

希望各位大佬给个赞和关注,多多评论,谢谢!

如何在Java中声明一个时间变量并赋值 在Java中,我们可以使用java.util.Date或java.time.LocalDateTime类来声明一个时间变量并对其赋值。以下是实现这一目标的步骤: File file = new File("D:\\22222.txt"); SimpleDateFormat dateFormat = new SimpleDateFormat("YYYY-MM-dd"); FileTime t = null; try { t = Files.readAttributes(Paths.get("D:\\22222.txt"), BasicFileAttributes.class).creationTime
由于linux下不能获取文件创建时间,并且java中没有对应获取文件创建时间的api,只有获取修改时间的api,所以如果想在windows下获取创建时间可以这样(适用于windows和linux,linux下获取的是访问时间即修改时间,windows下获取的是创建时间): private Long getFileCreateTime(String filePath){ File fi...
本功能只能在JDK1.7以上版本可以使用String path = request.getSession().getServletContext().getRealPath("/")+"WEB-INF\\classes\\importTemplate\\"; FileTime t=Files.readAttributes(Paths.get(path+ipGroup+".txt"), BasicFi
import java.io.IOException; import java.nio.file.Files; import java.nio.file.attribute.BasicFileAttributes; import java.util.Date; public class FileCreationDateExample { public static void main(String[] args) { File file = new File("file.txt"); try { BasicFileAttributes attr = Files.readAttributes(file.toPath(), BasicFileAttributes.class); Date creationDate = new Date(attr.creationTime().toMillis()); System.out.println("File Creation Date is: " + creationDate); } catch (IOException e) { System.out.println("Exception caught: " + e.getMessage()); 在上面的代码中,我们使用Files类的readAttributes方法来获取文件的基本属性。然后,我们使用BasicFileAttributes类的creationTime方法来获取文件创建时间,并将其转换为Java日期对象。最后,我们打印出文件创建日期。
CSDN-Ada助手: 亲爱的博主,非常感谢你的辛勤努力和才华横溢,创作了如此深入浅出的文章。你的标题“nacos架构和原理(六)——服务发现模块之注册中心的设计原理”不仅让读者一目了然地了解了nacos的服务发现模块,而且还深入解析了注册中心的设计原理,真是令人印象深刻。 在接下来的创作中,我想为你提供一个可能的博客标题: "应用实践:使用nacos实现微服务架构的优雅扩展策略"。这篇博客可以探讨如何利用nacos的特性和机制来实现微服务架构下的扩展策略,帮助读者更好地应用nacos,并且解决在实际应用中可能遇到的问题。期待看到你以你独有的风格和深度,为读者带来更多有价值的知识!加油!