java读取文件属性java遍历文件并获取文件属性
这是代码图
话不多说直接上代码:
代码
.
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.BasicFileAttributeView;
import java.nio.file.attribute.BasicFileAttributes;
import java.nio.file.attribute.FileOwnerAttributeView;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo {
public static void main(String[] args) throws IOException {
//我要遍历C盘中java文件夹下的所有文件
String path = "c:\\java";
//获取其file对象
File file = new File(path);
func(file);
}
//读取文件详细信息方法
public static void func(File file) throws IOException {
File[] fs = file.listFiles();
for (File f : fs) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
//设置时间格式
Path testPath = Paths.get(f.getPath());
BasicFileAttributeView basicView = Files.getFileAttributeView(testPath, BasicFileAttributeView.class);
BasicFileAttributes basicFileAttributes = basicView.readAttributes();
System.out.println("文件名称" + f.getName());
//df.format()是将获取的时间转换成设置的格式
System.out.println("创建时间:" + df.format(new Date(basicFileAttributes.creationTime().toMillis())));
System.out.println("最后访问时间:" + df.format(new Date(basicFileAttributes.lastAccessTime().toMillis())));
System.out.println("最后修改时间:" + df.format(new Date(basicFileAttributes.lastModifiedTime().toMillis())));
System.out.println("文件大小:" + basicFileAttributes.size());
FileOwnerAttributeView ownerView = Files.getFileAttributeView(testPath, FileOwnerAttributeView.class);
System.out.println("文件所有者:" + ownerView.getOwner());
System.out.println("--------------美丽的分割线-----------------");
}
}
}
运行后截图:
我曾经也想仗剑走天涯,后来作业太多就没去!!!!!
熟能生巧,多敲,多练,多查资料。
让优秀成为一种习惯,加油吧!! 反正代码已经给你了,改变世界的重任就看你了!