一、概述
File:是文件和目录路径名的抽象表示,主要有一下三个要点
1、实例可以或可以不表示实际的文件系统对象,如文件或目录。如果是这样表示这样一个对象,然后改对象位于一个分区,分区是存储为文件系统的操作系统的特定部分。
2、文件系统可以实现限制某些操作的实际文件系统对象,如读、写、和执行。这些限制统称访问权限。
3、File类的实例是不可变的;也就是说,一旦创建,由一个File对象表示的抽象路径名是不会改变的。
二、静态变量
1、File.pathSeparator:表示不同路径的分隔符,如C:\Users\Administrator\Desktop\io与目录C:\Users\Administrator\Desktop\thread之间的分隔符是“;”
2、
File.pathSeparatorChar:表示不同路径间的分隔符是一个字符;
3、File.separator:表示父级目录与子级目录间的分隔符,如C:\Users\Administrator\Desktop\io与目录C:\Users\Administrator\Desktop间的分隔符是“\”;
4、File.separatorChar:表示子父级目录间的分隔符是一个字符
三、静态构造方法
1、File.createTempFile(prefix, suffix):表示在系统默认临时文件所在文件夹创建一个临时文件,文件前缀(文件名)为prefix,文件后缀(文件类型)为suffix。如果后缀设为null,则默认后缀为tmp;
2、File.createTempFile(prefix, suffix, directory):表示在指定(directory)文件夹下创建一个临时文件
package test;
import java.io.File;
import java.io.IOException;
public class FileTest {
public static void main(String[] args) throws IOException {
System.out.println(File.pathSeparator);
System.out.println(File.pathSeparatorChar);
System.out.println(File.separator);
System.out.println(File.separatorChar);
System.out.println(File.createTempFile("temp", "txt"));
System.out.println(File.createTempFile("temp", null));
System.out.println(File.createTempFile("fan", "txt", new File("C:\\Users\\Administrator\\Desktop\\io")));
System.out.println(File.createTempFile("fan", null, new File("C:\\Users\\Administrator\\Desktop\\io")));
}
}
打印结果
四、重要方法
1、boolean canExecute():如果文件时可执行文件则返回true,如果是快捷方式则返回false,值得注意的是,txt,html等也返回true。
3、boolean canWrite():如果文件可以写入则返回true,否则返回false
4、int compareTo(File pathname):比较目录深度,如果前面的文件目录比后面的目录深泽则返回整数,相等返回0,小于则返回负数。
5、boolean delete():删除文件或文件夹、如果删除成功返回true,如果文件不存在或删除失败则放回false
6、void deleteOnExit():只有文件存在的时候才能被删除。
7、boolean exists():如果文件或文件夹存在则返回true,文件或文件夹不存在则返回false
8、String getAbsolutePath():返回文件的绝对路径
9、File getCanonicalFile():返回同一个文件或目录的规范路径字符串表示
10、boolean isDirectory():如果是文件夹返回true,否则返回false
11、boolean isFIle():如果是文件返回true,否则返回false
12、String[] list():获取文件夹下的所有文件的文件名
13、File[] listFiles():返回文件夹下的所有文件
14、boolean mkdir():创建文件夹,如果出现两极目录等就不能创建了
15、boolean mkdirs():可以创建多级目录
16、boolean renameTo(File dest):给文或文件夹重命名