File类
File类
·File类是文件和目录途径的抽象表示
·文件和目录可以通过File封装成对象
·File封装的对象仅仅是一个路径,可以存在,也可以不存在,不过可以通过创键来变成真实存在的。0
方法 | 类型 | 描述 |
---|---|---|
public File(String pathname) | 构造 | 给定一个要操作文件的完整路径 |
public File(String parent, String child) | 构造 | 给定要操作文件的父路径和子路径 |
public File(File parent, String child) | 构造 | 给定要操作文件的父路径和子路径名称 |
public boolean createNewFile() | 普通 | 创键文件 |
public boolean mkdir() | 普通 | 创键目录 |
public boolean mkdirs() | 普通 | 创键指定目录,可以创键多级目录 |
public boolean isDirectory() | 普通 | 测试指定路径是否是目录 |
public boolean isFile() | 普通 | 测试指定路径是否是文件 |
public boolean exists() | 普通 | 测试指定路径表示的File是否存在 |
public String getAbsolutePath() | 普通 | 测试此路径名的路径名字符串 |
public String getPath() | 普通 | 将此路径名转换为路径名字符串 |
public String getName() | 普通 | 返会此路径名表示的文件或目录的名称 |
public String[] list() | 普通 | 返回此路径名表示的目录中的文件和目录的名字的字符串 |
public File[] listFiles() | 普通 | 返回此路径名表示的目录中的文件和目录的File对象数组 |
public boolean delete() | 普通 | 删除此路径名表示的目录或文件 |
代码附上
//构造方法
File file1 = new File("D:\\Demo\\java");
File file2 = new File("D:\\Demo\\java","1.txt");
File file3 = new File(file1,"2.txt");
//创建方法
file1.mkdirs();
System.out.println(file2.createNewFile());
System.out.println(file3.createNewFile());
//判断方法
System.out.println(file1.isDirectory()); //true
System.out.println(file2.isFile()); //true
System.out.println(file3.isFile()); //true
System.out.println("--------------------"); //--------------------
//获取方法
System.out.println(file1.getAbsoluteFile()); //D:\Demo\java
System.out.println(file2.getParent()); //D:\Demo\java
System.out.println(Arrays.toString(file1.list())); //[1.txt, 2.txt]
System.out.println("--------------------"); //--------------------
File[] files = file1.listFiles();
for (File file : files) {
System.out.println(file.getName()); //1.txt
} //2.txt
System.out.println("--------------------");//
//删除方法//
System.out.println(file2.delete()); //true
System.out.println(file3.delete()); //true
System.out.println(file1.delete()); //true
返回目录下所有文件及文件夹
public static void listDir(File file){
if (file.isDirectory()){ //判断书否为目录
File[] results = file.listFiles(); //将目录中文件或者目录列为File数组
if (results != null){ //判断数组是否为空
for (int i = 0; i < results.length; i++) { //不为空则遍历File数组
listDir(results[i]); //递归调用方法判断
}
}
}
System.out.println(file); //输出目录地址
}
这里我传入的是 new File(“D:” + File.separator + “新建文件夹”)