File类概述和构造方法
File:它是文件和目录路径名的抽象表示
文件和目录是可以通过File封装成对象的
对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已,它可以存在,也可以不存在
我们对Fie的操作是将路径名变为具体的内容
方法
-
File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建新的File
-
File(String parent,String child)从父路径名字符串和子路径名字符串创建新的File
-
File(String parent,String child)从父抽象路径名和子路径名创建新的File
package dayhou40.day54; import java.io.File; public class Filetest { public static void main(String[] args) { File f1=new File("D:\\javatest\\java.txt"); System.out.println(f1); File f2 = new File("D:\\javatest","java.txt"); System.out.println(f2); File f3 = new File("D:\\javatest"); File f4 = new File(f3,"java.txt"); System.out.println(f4); } }
File的创建功能
-
public boolean creatNewFile()当该文件名不存在的时,创建一个由该抽象路径命名的新空文件
-
public boolean mkdir() 创建由此抽象路径名称的目录
-
public boolean mkdirs()创建由此抽象路径名称的目录,包括任何必需的但不存在的父目录
package dayhou40.day54; import java.io.File; import java.io.IOException; public class Filetest { public static void main(String[] args) throws IOException { File f1=new File("D:\\javatest\\java.txt"); System.out.println(f1.createNewFile()); } }
创建成功了在该目录下创建了Java.txt
package dayhou40.day54; import java.io.File; import java.io.IOException; public class Filetest { public static void main(String[] args) throws IOException { File f1=new File("D:\\javatest\\javafolder"); System.out.println(f1.mkdir()); } }
创建目录成功
package dayhou40.day54; import java.io.File; import java.io.IOException; public class Filetest { public static void main(String[] args) throws IOException { File f1=new File("D:\\javatest\\javafolder\\folder"); System.out.println(f1.mkdirs()); } }
创建了Javafolder文件夹和folder文件夹
注意创建文件就应该用创建文件的方式,创建目录就应该用创建目录的方式
如果用创建目录的方式创建文件那么就会创建处出txt结尾的目录
如下所示
package dayhou40.day54; import java.io.File; import java.io.IOException; public class Filetest { public static void main(String[] args) throws IOException { File f1=new File("D:\\javatest\\java.txt"); System.out.println(f1.mkdir()); } }
注意如果文件名和目录名称一样也会创建失败
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() 返回此抽象路径名表示的目录中的文件和目录的名称字符串数组
-
public File[] listFiles() 返回此抽象路径名表示的目录中的文件和目录的File数组
package dayhou40.day54; import java.io.File; public class Filetest { public static void main(String[] args){ File f1=new File("D:\\javatest\\java.txt"); System.out.println(f1.isDirectory()); System.out.println(f1.isFile()); System.out.println(f1.exists()); System.out.println(f1.getAbsolutePath()); System.out.println(f1.getPath()); System.out.println(f1.getName()); System.out.println("=============="); File f2 = new File("D:\\javatest"); String[] list = f2.list(); for (String s : list) { System.out.println(s); } System.out.println("=================="); File[] files = f2.listFiles(); for (File file : files) { System.out.println(file); } } }