编写一个实例获得文件夹中的所有文件以及创建时间,不会递归寻找文件夹中的文件夹
文章目录
代码实例
编写一个实例获得文件夹中的所有文件以及创建时间,不会递归寻找文件夹中的文件夹
package com.cndcare.msc.util;
import com.cndcare.msc.common.entity.po.FileInfoPO;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.BasicFileAttributes;
import java.time.Instant;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
@Slf4j
public class Main {
@SneakyThrows
public static String getCreationTime(File file) {
if (file == null) {
return null;
}
Path path = file.toPath();
BasicFileAttributes attr = Files.readAttributes(path, BasicFileAttributes.class);
// 创建时间
Instant instant = attr.creationTime().toInstant();
// 更新时间
// Instant instant = attr.lastModifiedTime().toInstant();
// 上次访问时间
// Instant instant = attr.lastAccessTime().toInstant();
String format = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault()).format(instant);
return format;
}
/***
* 获得一个文件夹中的文件名称
* ,但是不递归文件中的文件夹
* @param filePath
*/
private static void getFileName(String filePath){
List<FileInfoPO> result = new ArrayList<>();
File file = new File(filePath);
//获取该文件夹下所有的文件
File[] fileArray = file.listFiles();
for(int i =0; i< fileArray.length; i++){
File f = fileArray[i];
String fileName = f.getName();
String createTime = getCreationTime(f);
String path = filePath + fileName;
if(path.endsWith(".apk") || path.endsWith(".APK")){
System.out.println(fileName + ":===" + createTime + "=====>>>" + path);
}
}
}
public static void main(String[] args) {
getFileName("D:/apk/");
}
}
程序结果
文件夹相关的信息