在windows上获取文件创建时间

目前在Windows上测试成功,linux上可能是由问题的,在网上找了些资料,结合自己调试结果,最终如下:

递归获取文件:

List<File> fileList = new TreeList();
public List<File> files(File file){
    for(File f : file.listFiles()){
        if(f.isFile()){
            fileList.add(f);
        }else{
            files(f);
        }
    }
    return fileList;
}

导入测试环境:

@Test
public void uuid(){
    String filePath = "你的本地文件夹";
    File filePathIs = new File(filePath);
    if(!filePathIs.isDirectory()){
        filePathIs.mkdirs();
    }
    List<File> files = files(filePathIs);
    files.stream().forEach(f -> {
        try {
            BasicFileAttributes basicFileAttributes = java.nio.file.Files.readAttributes(f.toPath(), BasicFileAttributes.class);
            FileTime fileTime = basicFileAttributes.creationTime();
            Instant instant = fileTime.toInstant();
            System.out.println(instant.atZone(ZoneId.of("GMT+8")));
        } catch (IOException e) {
            e.printStackTrace();
        }
    });
}

OK,很简单,做个记录。

posted @ 2018-11-23 18:05  孤燕南飞  阅读(878)  评论(0编辑  收藏  举报