更新时间:2021-07-30 来源:黑马程序员 浏览量:
File类用于封装一个路径,这个路径可以是从系统盘符开始的绝对路径,如:“D:\file\a.txt”,也可以是相对于当前目录而言的相对路径,如:“src\Hello.java”。File类内部封装的路径可以指向一个文件,也可以指向一个目录,在File类中提供了针对这些文件或目录的一些常规操作。
接下来介绍一下File类常用的构造方法,如表1所示。
表1 File类常用的构造方法
方法声明 | 功能描述 |
---|---|
File(String pathname) | 通过指定的一个字符串类型的文件路径来创建一个新的File对象 |
File(String parent,String child) | 根据指定的一个字符串类型的父路径和一个字符串类型的子路径(包括文件名称)创建一个File对象 |
File(File parent,String child) | 根据指定的File类的父路径和字符串类型的子路径(包括文件名称)创建一个File对象 |
首先,在项目当前目录下创建一个文件“example.txt”,并在文件中输入内容“File”,然后创建一个使用File常用方法的类,来查看文件的相应信息,如文件1所示。
文件1 Example12.java
import java.io.*; public class Example12 { public static void main(String[] args) { // 创建File文件对象 File file = new File("example.txt"); System.out.println("文件名称:" + file.getName()); System.out.println("文件的相对路径:" + file.getPath()); System.out.println("文件的绝对路径:" + file.getAbsolutePath()); System.out.println("文件的父路径:" + file.getParent()); System.out.println(file.canRead() ? "文件可读" : "文件不可读"); System.out.println(file.canWrite() ? "文件可写": "文件不可写"); System.out.println(file.isFile() ? "是一个文件" :"不是一个文件"); System.out.println(file.isDirectory()? "是一个目录":"不是一个目录"); System.out.println(file.isAbsolute() ? "是绝对路径": "不是绝对路径"); System.out.println("最后修改时间为:" + file.lastModified()); System.out.println("文件大小为:" + file.length() + " bytes"); System.out.println("是否成功删除文件"+file.delete()); } }
运行结果如图1所示。
图1 运行结果
在文件1中,调用File类的一系列方法获取到了文件的名称、相对路径、绝对路径、文件是否可读等信息,并通过delete()方法将文件删除。