File是文件和目录路径的抽象表示
方法名说明File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的File实例File(String parent,String child)从父路径名字符串和子路径名字符串创建新的File实例File(File parent,String child)从父抽象路径名和子路径名字符串创建新的File实例以上内容我也不懂,看代码实现
package day43;import java.io.File;public class FileDemo01 { public static void main(String[] args) { //File(String pathname),写绝对路径 File f1 = new File("C:\Users\29859\Desktop\test.txt"); System.out.println(f1); //File(String parent,String child),通过文件路径和子文件合并为完成的路径 File f2 = new File("C:\Users\29859\Desktop","test.txt"); System.out.println(f2); //File(File parent,String child),可以接受一个file对象,然后加上子文件 File f3 = new File("C:\Users\29859\Desktop"); File f4 = new File(f3,"test.txt"); System.out.println(f4); }}
File类的创建功能
方法名说明public boolean createNextFile()当具有该名称的文件不存在时,创建一个由该抽象路径命名的新文件public boolean mkdir()创建由此抽象路径命名的目录public bolean mkdirs()创建由此抽象路径命名的路径,包含必须但是不存在的父目录(可以理解为mkdir -p)package day43;import java.io.File;import java.io.IOException;public class FileDemo02 { public static void main(String[] args) throws IOException { File f1 = new File("C:\Users\29859\Desktop\test\test.txt"); //注意需要抛出 throws IOException 错误,不然代码执行会有问题,具体原因自己百度 System.out.println(f1.createNewFile()); //创建文件夹 File f2 = new File("C:\Users\29859\Desktop\test\1"); System.out.println(f2.mkdir()); //创建多层目录 File f3 = new File("C:\Users\29859\Desktop\test\1\2\3\4"); System.out.println(f3.mkdirs()); //需要注意的是如果文件名和文件夹名相同,在同一层目录下,那么会导致创建不成功 //另外,如果创建成功放回的是True 反转如果创建不成功放回的是False }}
方法名说明public boolean isDirectory()测试此抽象路径名称表示的File是否为目录public boolean isFile()测试此抽象路径名表示的File是否问文件public boolean exists()测试此抽象路径名表示的File是否存在public String getAbsolutePath()返回此抽象路径名的绝对路径名字符串public String getPath()将此抽象路径名转换为路径名字符串public String getName()返回此抽象路径名表示的文件或者目录名称public String[] list()返回此抽象路径名表示的目录中的文件和目录的名称字符串数组public File[] listFiles() 返回此抽象路径名表示的目录中的文件和目录的File对象数组package day43;import java.io.File;public class FileDemo03 { public static void main(String[] args) { File f1 = new File("C:\Users\29859\Desktop\test\test"); //判断是否存在,以及是否是文件或者路径 System.out.println(f1.isDirectory()); System.out.println(f1.isFile()); System.out.println(f1.exists()); //打印出绝对路径 System.out.println(f1.getAbsoluteFile()); //打印出File对象的路径,记住如果File对象是当前路径,可能并没有写绝对路径,那么返回的也是对象的目录(非绝对路径) System.out.println(f1.getPath()); //打印出当前对象的最后一个(路径或者文件) System.out.println(f1.getName()); //用一个String字典来保存当前文件下的信息,注意是String类型是没办法做判断的 File f2 = new File("C:\Users\29859\Desktop\test"); String[] strArry = f2.list(); for(String str: strArry){ System.out.println(str); } File[] fileArray = f2.listFiles(); for(File file:fileArray){ //这里可以判单是文件或者是路径 if(file.isFile()){ System.out.println(file); } } }}
File类的删除功能
方法名说明public boolean delete()删除由此抽象路径名表示的文件或者路径注意删除,如果文件夹下由文件夹或者文件,是不能直接删除上层文件夹的