管理目录与路径

Java 中的输入/输出与流

Alex Liu

Software Developer Engineer

关键概念

  • 目录 用于组织文件和数据
  • 路径 指定文件和目录的位置
  • File 类可表示文件或目录
    • 实际创建的资源取决于调用的方法(目录用 mkdir(),文件用 createNewFile()

带有多个目录图标的电脑显示器

Java 中的输入/输出与流

创建目录

  • 导入 File
    import java.io.File;
    
  • 创建表示目录的 File 对象
    File newDirectory = new File("myDirectory");
    
  • 使用 .mkdir() 在文件系统中实际创建目录
    boolean created = newDirectory.mkdir();
    
  • 创建成功返回 true
  • 若目录已存在或无法创建返回 false
Java 中的输入/输出与流

列出目录文件

  • 使用 .listFiles() 列出目录中的文件

$$

// 创建表示目录 `myDirectory` 的 `File` 对象
File dir = new File("myDirectory");
// 获取表示 `myDirectory` 内容的 `File` 对象数组
File[] files = dir.listFiles();
  • 若目录存在,返回 File 对象的数组
  • 若目录不存在,返回 null
Java 中的输入/输出与流

获取文件的相对路径

  • 相对路径:相对于当前工作目录的文件/目录位置
// 为 `myDirectory` 内的 `sample.txt` 创建一个 `File` 对象
File file = new File("myDirectory/sample.txt");
// 以字符串形式获取文件的相对路径
String path = file.getPath();
System.out.println(path);
  • 假设 myDirectory 已存在;否则创建或写入会失败

  • 输出:

    myDirectory/sample.txt
    
Java 中的输入/输出与流

使用绝对路径

  • 绝对路径:从文件系统根目录开始的完整路径

$$

// 为 `myDirectory` 内的 `sample.txt` 创建一个 `File` 对象
File file = new File("myDirectory/sample.txt");
// 以字符串形式获取文件的绝对路径
String absPath = file.getAbsolutePath();
System.out.println(absPath);
  • 输出:
/user/home/myDirectory/sample.txt
Java 中的输入/输出与流

Passons à la pratique !

Java 中的输入/输出与流

Preparing Video For Download...