1、分隔符
@Test
public void test01() {
System.out.println(File.pathSeparator);
System.out.println(File.separator);
}
2、文件的相关属性
@Test
public void test02() {
File file = new File("D:\\test\\a\\c.txt");
System.out.println(file);
System.out.println("文件存放的绝对路径:" + file.getAbsolutePath());
System.out.println("文件存放的绝对路径的 file 对象:" + file.getAbsoluteFile());
System.out.println("文件的路径:" + file.getPath());
System.out.println("文件名或者目录名:" + file.getName());
System.out.println("是否可读:" + file.canRead());
System.out.println("是否可写:" + file.canWrite());
System.out.println("是否可执行:" + file.canExecute());
System.out.println("是否是绝对路径:" + file.isAbsolute());
System.out.println("是否是文件:" + file.isFile());
System.out.println("是否是目录:" + file.isDirectory());
System.out.println("是否隐藏文件:" + file.isHidden());
System.out.println("文件长度:" + file.length());
System.out.println("文件的最后修改时间:" + new Date(file.lastModified()));
System.out.println("文件的父目录:" + file.getParent());
System.out.println("文件的父目录对象:" + file.getParentFile());
System.out.println("当前文件所在分区总空间:" + file.getTotalSpace());
System.out.println("当前文件所在分区可用空间:" + file.getUsableSpace());
}
3、创建以及删除文件
@Test
public void test03() {
File file = new File("D:/test/b/c/b.txt");
File parentFile = file.getParentFile();
if (!parentFile.exists()) {
if (parentFile.mkdirs()) {
System.out.println("创建目录成功");
}
}
boolean flag = false;
if (!file.exists()) {
try {
flag = file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
if (flag) {
System.out.println("文件创建成功");
} else {
System.out.println("文件创建失败");
}
}
flag = file.delete();
System.out.println("文件删除是否成功:" + flag);
}
4、遍历目录
@Test
public void test04() {
File file = new File("D:/test");
String[] list = file.list();
System.out.println("file对象下的所有文件目录名字:" + Arrays.toString(list));
File[] files = file.listFiles();
System.out.println("file对象下的所有文件目录对象:" + Arrays.toString(files));
}
5、遍历目录下的所有文件(包含子目录)
private static List<File> filesList = new ArrayList<>();
public void showFile(File file) {
File[] files = null;
if (file != null) {
files = file.listFiles();
}
if (files != null) {
for (File temp : files) {
filesList.add(temp);
if (temp.isDirectory()) {
showFile(temp);
}
}
}
}
public static void main(String[] args) {
File file = new File("D:/test");
showFile(file);
System.out.println(filesList);
}