File()

File:代表磁盘里面存在或者不存在的目录/文件,在java.IO*包里面

File:代表磁盘里面存在或者不存在的目录/文件,在java.IO*包里面

常用构造:

File(File parent, String child) 
从父抽象路径名和子路径名字符串创建新的 File实例。  

File(String pathname) 
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。  

File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例

当file作为文件:

  • 创建文件对象给的路径文件不存在的时候:
//创建文件对象:
//1、当创建的文件不存在的时候:
String filePath="1129\\src\\filedemo\\FileDemo1.java";
File file=new File(filePath);
System.out.println(file.getPath());
//获得相对路径:1129\src\filedemo\FileDemo1.java
System.out.println(file.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\1129\src\filedemo\FileDemo1.java
System.out.println(file.canExecute());//是否可执行:false
System.out.println(file.canRead());//是否可读:false
System.out.println(file.exists());//判断文件是否存在:false
System.out.println(file.getName());//得到文件名和后缀:FileDemo1.java
System.out.println(file.isFile());//判断文件是否是一个文件:false
System.out.println(file.lastModified());//获取最新操作文件时间:毫秒
file.setReadOnly();//将文件属性改为只读
System.out.println(file.length());//0
System.out.println(File.pathSeparator);//  ;  当前系统的文件分隔符
System.out.println(File.pathSeparatorChar);//  ;
System.out.println(File.separator);//  \  当前系统路径的分隔符
System.out.println(File.separatorChar);//  \
  • 创建文件路径存在的时候
String filePath="1129\\src\\filedemo\\FileDemo.java";
File file=new File(filePath);
System.out.println(file.getPath());
//获得相对路径:1129\src\filedemo\FileDemo.java
System.out.println(file.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\1129\src\filedemo\FileDemo.java
System.out.println(file.canExecute());//是否可执行:true
System.out.println(file.canRead());//是否可读:true
System.out.println(file.exists());//判断文件是否存在:true
System.out.println(file.getName());//得到文件名和后缀:FileDemo.java
System.out.println(file.isFile());//判断文件是否是一个文件:true
System.out.println(file.lastModified());//1669819935506(最新操作日期的毫秒数)
System.out.println(file.length());//2574

当file作为目录:

String dir="src\\filedemo1";
File directory=new File(dir);
System.out.println(directory.getPath());
//获得相对路径:src\filedemo1
System.out.println(directory.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\src\filedemo1
System.out.println(directory.canExecute());//是否可执行:false
System.out.println(directory.canRead());//是否可读:false
System.out.println(directory.exists());//判断目录是否存在:false
System.out.println(directory.getName());//得到目录名:filedemo1
System.out.println(directory.isFile());//判断文件是否是一个文件
System.out.println(directory.lastModified());//0(最新操作日期的毫秒数)
System.out.println(directory.length());//0
System.out.println(directory.isDirectory());//判断是否是一个目录
File[] files = dir.listFiles();//查看一级子目录下的所有文件和目录

例题:将给定目录下的文件全部展示:

例题:将给定目录下的文件全部展示:

//因为多次调用,所以可以用递归的方法来进行查找
private static void findChild(File file) {
    if(!file.exists()){
        System.out.println("目录不存在!");
    }
    File[] files = file.listFiles();
    for (File file1 : files) {
        if (file1.isDirectory()) {
            System.out.println(file1);
            findChild(file1);
        }
        else if(file1.isFile()) {//不是目录就是文件
            System.out.println(file1);
        }
    }
}

private static void demo4() {
    String path = "1129\\src";
    File dir = new File(path);
    findChild(dir);//查找到src下面的所有文件
}

将输出的文件夹一层层展示:

private static void findChild1(File file,String s) {
    if(!file.exists()){
        System.out.println("文件不存在!");
    }
    File[] files = file.listFiles();
    for (File file1 : files) {
        System.out.println(s+file1.getName());
        if (file1.isDirectory()) {
            findChild1(file1,"| "+s);
        }
    }
}

输出内容:

|-com
| |-liku
| | |-demo1.java
| | |-study
| | | |-demo1.java
|-exercise.java
|-filedemo
| |-FileDemo.java
|-Student.java
————————

File:代表磁盘里面存在或者不存在的目录/文件,在java.IO*包里面

File:代表磁盘里面存在或者不存在的目录/文件,在java.IO*包里面

常用构造:

File(File parent, String child) 
从父抽象路径名和子路径名字符串创建新的 File实例。  

File(String pathname) 
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。  

File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例

当file作为文件:

  • 创建文件对象给的路径文件不存在的时候:
//创建文件对象:
//1、当创建的文件不存在的时候:
String filePath="1129\\src\\filedemo\\FileDemo1.java";
File file=new File(filePath);
System.out.println(file.getPath());
//获得相对路径:1129\src\filedemo\FileDemo1.java
System.out.println(file.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\1129\src\filedemo\FileDemo1.java
System.out.println(file.canExecute());//是否可执行:false
System.out.println(file.canRead());//是否可读:false
System.out.println(file.exists());//判断文件是否存在:false
System.out.println(file.getName());//得到文件名和后缀:FileDemo1.java
System.out.println(file.isFile());//判断文件是否是一个文件:false
System.out.println(file.lastModified());//获取最新操作文件时间:毫秒
file.setReadOnly();//将文件属性改为只读
System.out.println(file.length());//0
System.out.println(File.pathSeparator);//  ;  当前系统的文件分隔符
System.out.println(File.pathSeparatorChar);//  ;
System.out.println(File.separator);//  \  当前系统路径的分隔符
System.out.println(File.separatorChar);//  \
  • 创建文件路径存在的时候
String filePath="1129\\src\\filedemo\\FileDemo.java";
File file=new File(filePath);
System.out.println(file.getPath());
//获得相对路径:1129\src\filedemo\FileDemo.java
System.out.println(file.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\1129\src\filedemo\FileDemo.java
System.out.println(file.canExecute());//是否可执行:true
System.out.println(file.canRead());//是否可读:true
System.out.println(file.exists());//判断文件是否存在:true
System.out.println(file.getName());//得到文件名和后缀:FileDemo.java
System.out.println(file.isFile());//判断文件是否是一个文件:true
System.out.println(file.lastModified());//1669819935506(最新操作日期的毫秒数)
System.out.println(file.length());//2574

当file作为目录:

String dir="src\\filedemo1";
File directory=new File(dir);
System.out.println(directory.getPath());
//获得相对路径:src\filedemo1
System.out.println(directory.getAbsolutePath());
//获得绝对路径:E:\preview\JavaSE\src\filedemo1
System.out.println(directory.canExecute());//是否可执行:false
System.out.println(directory.canRead());//是否可读:false
System.out.println(directory.exists());//判断目录是否存在:false
System.out.println(directory.getName());//得到目录名:filedemo1
System.out.println(directory.isFile());//判断文件是否是一个文件
System.out.println(directory.lastModified());//0(最新操作日期的毫秒数)
System.out.println(directory.length());//0
System.out.println(directory.isDirectory());//判断是否是一个目录
File[] files = dir.listFiles();//查看一级子目录下的所有文件和目录

例题:将给定目录下的文件全部展示:

例题:将给定目录下的文件全部展示:

//因为多次调用,所以可以用递归的方法来进行查找
private static void findChild(File file) {
    if(!file.exists()){
        System.out.println("目录不存在!");
    }
    File[] files = file.listFiles();
    for (File file1 : files) {
        if (file1.isDirectory()) {
            System.out.println(file1);
            findChild(file1);
        }
        else if(file1.isFile()) {//不是目录就是文件
            System.out.println(file1);
        }
    }
}

private static void demo4() {
    String path = "1129\\src";
    File dir = new File(path);
    findChild(dir);//查找到src下面的所有文件
}

将输出的文件夹一层层展示:

private static void findChild1(File file,String s) {
    if(!file.exists()){
        System.out.println("文件不存在!");
    }
    File[] files = file.listFiles();
    for (File file1 : files) {
        System.out.println(s+file1.getName());
        if (file1.isDirectory()) {
            findChild1(file1,"| "+s);
        }
    }
}

输出内容:

|-com
| |-liku
| | |-demo1.java
| | |-study
| | | |-demo1.java
|-exercise.java
|-filedemo
| |-FileDemo.java
|-Student.java