JavaSE-File类、递归

2019-12-09  本文已影响0人  雷哒哒

目录

[TOC]

第一章:File类

1.1 File类介绍

​ java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。

1.2 构造方法

1.3 File类静态成员

1.4 常用方法

  1. 获取功能-相关方法

    • 方法

      1. public String getAbsolutePath():返回此File的绝对路径名字符串。
      2. public String getPath() :将此File转换为路径名字符串。
      3. public String getName():返回由此File表示的文件或目录的名称。
      4. public long length():返回由此File表示的文件的长度。
    • 代码

        public static void main(String[] args) {
          // 1. `public String getAbsolutePath() `:返回此File的绝对路径名字符串。
          show1();
          // 2. `public String getPath()` :将此File转换为路径名字符串。
          show2();
          // 3. `public String getName() `:返回由此File表示的文件或目录的名称。
          show3();
          // 4. `public long length() `:返回由此File表示的文件的长度(文件的大小)
          show4();
        }
      
        private static void show4() {
          // 不存在的文件夹或不存在的文件或存在的文件夹返回的都是0
          File file1 = new File("D:\\JavaCode\\BasicCode\\a");
          System.out.println(file1.length()); // 0
          File file3 = new File("D:\\JavaCode\\BasicCode\\aa");
          System.out.println(file3.length()); //0
          File file2 = new File("D:\\JavaCode\\BasicCode\\a\\logo01.png");
          System.out.println(file2.length()); //11610 字节
        }
      
        private static void show3() {
          File file1 = new File("D:\\JavaCode\\BasicCode\\a");
          System.out.println(file1.getName()); // a
          File file2 = new File("1.txt");   // 1.txt
          System.out.println(file2.getName());
        }
      
        private static void show2() {
          // 文件路径是什么就返回什么
          File file1 = new File("D:\\JavaCode\\BasicCode\\1.txt");
          System.out.println(file1.getPath()); // D:\JavaCode\BasicCode\1.txt
          File file2 = new File("1.txt");   // 1.txt
          System.out.println(file2.getPath());
        }
      
        private static void show1() {
          File file1 = new File("D:\\JavaCode\\BasicCode\\1.txt");
          System.out.println(file1.getAbsoluteFile()); // D:\JavaCode\BasicCode\1.txt
          File file2 = new File("1.txt");   // D:\JavaCode\BasicCode\1.txt
          System.out.println(file2.getAbsoluteFile());
        }
      
  2. 绝对路径和相对路径

    • 绝对路径:从盘符开始的路径,这是一个完整的路径。
    • 相对路径:相对于项目目录的路径,这是一个便捷的路径,开发中经常使用。
  3. 判断功能-相关方法

    • 方法

      1. public boolean exists() :此File表示的文件或目录是否实际存在。
      2. public boolean isDirectory() :此File表示的是否为目录(目录实际存在)。
      3. public boolean isFile() :此File表示的是否为文件(文件实际存在)。
    • 代码

          File file1 = new File("a");
          // 1. `public boolean exists()` :此File表示的文件或目录是否实际存在。
          System.out.println(file1.exists());  // true
          // 2. `public boolean isDirectory()` :此File表示的是否为目录。
          System.out.println(file1.isDirectory()); // true
          // 3. `public boolean isFile()` :此File表示的是否为文件。
          System.out.println(file1.isFile());  // false
      
  4. 创建删除功能-相关方法

    • 方法

      1. public boolean createNewFile() :当且仅当具有该名称的文件尚不存在时,创建一个新的空文件。
      2. public boolean delete():删除由此File表示的文件或目录。
      3. public boolean mkdir() :创建由此File表示的目录。
      4. public boolean mkdirs():创建由此File表示的目录,包括任何必需但不存在的父目录。
    • 代码

        public static void main(String[] args) throws IOException {
          // 1. `public boolean createNewFile()` :当且仅当具有该名称的文件尚不存在时,创建一个新的空文件。
          File file1 = new File("a"); // 已经存在的文件目录
          System.out.println(file1.createNewFile()); // false
          File file2 = new File("b"); // 不存在的文件
          System.out.println(file2.createNewFile()); // true
          // 2. `public boolean delete() `:删除由此File表示的文件或目录。
          File file3 = new File("c"); // 不存在的文件
          System.out.println(file3.delete()); // false
          File file4 = new File("b"); // 不存在的文件
          System.out.println(file4.delete()); // true
          // 3. `public boolean mkdir()` :创建由此File表示的目录。
          File file5 = new File("e"); // 不存在的文件目录
          System.out.println(file5.mkdir()); // true
          File file6 = new File("e//g/f"); // 多级文件目录
          System.out.println(file6.mkdir()); // false
          // 4. `public boolean mkdirs() `:创建由此File表示的目录,包括任何必需但不存在的父目录。
          System.out.println(file6.mkdirs()); // true
      
        }
      

1.5 目录的遍历

第二章:递归

2.1 递归介绍

2.2 递归练习1

2.3 递归练习2

2.4 递归练习3

2.5 递归练习4

2.6 文件过滤器

java.io.FileFilter 是一个接口,是File的过滤器。 该接口的对象可以传递给File类的 listFiles(FileFilter)方法作为参数, 接口中只有一个方法。

boolean accept(File pathname) :测试pathname是否应该包含在当前File目录中,符合则返回true。 �

上一篇下一篇

猜你喜欢

热点阅读