一、概述
File:是文件和目录路径名的抽象表示
1.文件和目录是可以通过File类封装成对象的
2.对于File而言,其封装的不是一个具体存在的文件,而是一个路径名,可以是存在的也可以是不存在的;以后要用的时候可以
通过具体的操作将其内容转换为具体存在的
二、常用构造方法
方法名 | 说明 |
---|---|
File(File parent, String child) | 从父抽象路径名和子路径名字符串创建新的 File 实例 |
File(String pathname) | 通过将给定的路径名字符串转换为抽象路径名来创建新的 File 实例 |
File(String parent, String child) | 从父路径名字符串和子路径名字符串创建新的 File 实例 |
File(URI uri) | 通过将给定的 file: URI转换为抽象路径名来创建新的 File 实例 |
前三种方法都能实现一样的效果,所以我们通常只是用第二种就好了,很方便
public class FileDemo {
public static void main(String[] args) {
//File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的 `File`实例
File f=new File("E:\\java.tet");
System.out.println(f);
//File(String parent, String child)从父路径名字符串和子路径名字符串创建新的 `File`实例
File f1=new File("E:","java.txt");
//File(File parent, String child)从父抽象路径名和子路径名字符串创建新的 `File`实例
File f2=new File("E:");
File f3=new File(f2,"java.txt");
System.out.println(f3);
}
}
三、File类的创建方法
方法名 | 说明 |
---|---|
public boolean createNewFile() | 当具有该名称的文件不存在时,创建一个由该抽象路径命名的新空文件 |
public boolean mkdir() | 创建由此抽象路径命名的目录 |
public Boolean mkdirs() | 创建由此抽象路径命名的目录,包含任何必须但不存在的父目录 |
public class FileDemo01 {
public static void main(String[] args) throws IOException {
//在E盘下的Java包内创建一个Java.txt文件
File f=new File("E:\\java\\java.txt");
System.out.println(f.createNewFile());//抽象文件不存在就返回true,并创建该文件,存在就返回false不创建
//在E盘下的Java包内创建一个Javase目录
File f1=new File("E:\\java\\javase");//存在就返回true,并创建该文件,存在就返回false不创建
System.out.println(f1.mkdir());
//在E盘下的Java包内创建一个多级目录javaWeb\\css
File f2=new File("E:\\java\\javaWeb\\css");//存在就返回true,并创建该文件,存在就返回false不创建
System.out.println(f2.mkdirs());
}
}
四、File类的判断和获取方法
方法名 | 说明 |
---|---|
public boolean isDirectory() | 测试此抽象路径名表示的File是否为目录 |
public boolean isFile() | 测试此抽象路径名表示的File是否为文件 |
public boolean exists() | 测试此抽象路径表示的File是否存在 |
public String getAbsolutePath() | 返回此抽象路径名的绝对路径字符串 |
public String getPath() | 将此抽象路径名转换为路径名字符串 |
public String getName() | 返回由此抽象路径名表示的文件或者目录的名称 |
public String[] list() | 返回此抽象路径名表示的目录中的文件和目录的File对象数组 |
public File()listFiles() | 返回此抽象路径名表示的目录中的文件和目录的File对象数组 |
五、File的删除功能