Java文件操作

199 阅读1分钟

创建文件

createNewFile()

创建文件夹

mkdir(),创建单一目录,上一级目录存在时候,下一级目录才能被创建出来。

mkdirs(),创建多重目录,解决了上面的文件,不存在的东西,他都会帮你创建出来。

删除目录

只有目录为空才能删除。

延迟删除:直到JVM通过使用deleteOnExit()方法终止。

立刻删除:delete。

File对象表示路径名,而不是文件系统中的实际文件。

1、isHidder()检查文件是否被隐藏

2、lastModified()和setLastModified()方法来获取和设置文件的最后修改日期和时间。

3、setReadOnly(),setReadable(),setWritable()和setExecutable()方法将文件设置为只读,可读,可写和可执行。

获取文件的字节大小

使用File类,length(),获取文件的大小(字节为单位),返回类型是long类型不是int类型。如file对象表示不存在的文件,length返回为0。

展示目录或者文件

File类的list()和listFiles()列出所有目录和文件,一个返回字符串数组,一个返回File数组

使用File过滤

import java.io.File;
import java.io.FileFilter;

public class Main {
  public static void main(String[] args) {
    String dirPath = "C:\\";
    File dir = new File(dirPath);

    // Create a file filter to exclude any .SYS file
    FileFilter filter = file -> {
      if (file.isFile()) {
        String fileName = file.getName().toLowerCase();
        if (fileName.endsWith(".sys")) {
          return false;
        }
      }
      return true;
    };

    File[] list = dir.listFiles(filter);

    for (File f : list) {
      if (f.isFile()) {
        System.out.println(f.getPath() + "  (File)");
      } else if (f.isDirectory()) {
        System.out.println(f.getPath() + "  (Directory)");
      }
    }
  }
}