概念: 在 Java 中,File 类是 java.io 包中唯一代表磁盘文件本身的对象,也就是说,如果希望在程序中操作文件和目录,则都可以通过 File 类来完成。File 类定义了一些方法来操作文件,如新建、删除、重命名文件和目录等。
(1) java.io.File
类:文件和文件目录路径的抽象表示形式,与平台无关
(2)File
类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO
流来完成。
(3) 想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File
对象,但是Java程序中的一个File
对象,可能没有一个真实存在的文件或目录。
(4) File
对象可以作为参数传递给流的构造器,指明读取或写入的"终点"。
File 类不能访问文件内容本身,如果需要访问文件内容本身,则需要使用输入/输出流。
File 类提供了如下三种形式构造方法:
File(String path):如果 path 是实际存在的路径,则该 File 对象表示的是目录;如果 path 是文件名,则该 File 对象表示的是文件。
File(String path, String name):path 是路径名,name 是文件名。
File(File dir, String name):dir 是路径对象,name 是文件名。
方法摘要:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
代码示例:
//构造方法
File f1= new File("D:/aaa/bbb/bb.txt");
File f2= new File("D:/aaa/bbb");
File f3= new File(f1,bb.txt);
String absolutePath = f1.getAbsolutePath();//获取绝对磁盘路径getAbsolutePath()
System.out.println(absolutePath);//D:\aaa\bbb\bb.txt
String parent = f1.getParent();//获取父路径getParent
System.out.println(parent);//D:\aaa\bbb
String name = f1.getName();//获取文件名getName()
System.out.println(name);//bb.txt
long length = f1.length();//获取文件大小length
System.out.println(length);//0
//是否为文件夹isDirectory()
System.out.println(f2.isDirectory());//false
//判断是否为文件isFile()
System.out.println(f1.isFile());//false
案例:在D盘符创建多级文件夹,并创建.txt文件
//创建一个目录对象
File f1 = new File("D:/a/b/c/d");
//创建文件对象
File f2 = new File(f1,"e.txt");
//创建文件夹,如果父级目录没有被创建则创建父级文件夹
f1.mkdirs();
//创建文件
f2.createNewFile();