- File 类的一个对象,代表一个文件或者文件目录
-
1. 创建File实例
1.1 路径问题
【使用相对路径】
File 能识别的相对路径是从当前项目目录(src外)开始算的,public class Test {
public static void main(String[] args) {
File file = new File("hello.txt") ;
}
}
【使用绝对路径】
绝对路径要注意的就是层与层之间的分隔符。 windows使用 ‘\’ 来表示
- UNIX和URL使用 ‘/‘ 来表示
Java 为了解决不同平台下分隔符不同的问题,File 类提供了一个常量:public static final String separator
public class Test {
public static void main(String[] args) {
File file = new File("d:"+File.separator+"Java"+File.separator+"hello.txt") ;
}
}
如上述代码所示,"d:"+File.separator+"Java"+File.separator+"hello.txt" 在 Windows 下就是 d:\Java\hello.txt,在 UNIX 下就是 d:/Java/hello.txt。<br />注意,反斜杠 '\' 在 Java 中是转义字符,因此,想要传入正确的windows绝对路径,要使用双反斜杠"\\"来作为分隔符。
1.2 三种构造器
- 构造器1:
直接传入路径,相对绝对都可以
File file1 = new File("D:\\Java\\JavaProject\\FileTest") ;
- 构造器2
两个参数,左参为父路径,右参在父路径下的文件或文件目录
File file2 = new File("D:\\Java\\JavaProject","FileTest") ;
- 构造器3
两个参数,左参为作为父路径的File型对象,右参为该父路径下的文件或文件目录
File file1 = new File("D:\\Java\\JavaProject") ;
File file3 = new File(file1,"FileTest") ;
2. File 的常用方法
2.1 查询
返回类型 | 方法名 | 功能 |
---|---|---|
String | getAbsolutePath | 获取绝对路径 |
String | getPath | 获取相对路径 |
String | getName | 获取名称 |
String | getParent | 获取上层目录,若无则返回null |
long | length | 获取文件字节数,不能对目录操作 |
long | lastModified | 获取最后一次修改时间 |
String[] | list | 获取目录下所有文件或文件目录的名称数组。不能对文件操作 |
File[] | listFiles | 获取指定目录下的所有文件或者文件目录的 File 数组 |
2.2 判断
返回类型 | 方法名 | 功能 |
---|---|---|
boolean | isDirectiory | 判断是否为目录 |
boolean | isFile | 判断是否为文件 |
boolean | exist | 判断是否存在 |
boolean | canRead | 判断是否可读 |
boolean | canWrite | 判断是否可写 |
boolean | isHidden | 判断是否隐藏 |