一.File的定义
File类是java.io包下代表与平台无关的文件和目录,在程序中操作文件和目录都可以通过File类来完成。
File类是IO包中唯一表示磁盘文件和磁盘目录的对象路径,该类包含了创建文件,删除文件,重命名文件,判断文件读写权限,判断文件是否存在,查询等功能方法。
File只能设置和获取文件本身的信息,不能设置和获取文件的内容。如果需要访问文件内容本身,则需要使用输入/输出流。
File类可以使用文件路径字符串来创建File实例,该文件路径字符串既可以是绝对路径,也可以是相对路径,默认情况下,系统总是依据用户的工作路径来解释相对路径,这个路径由系统属性"user.dir"指定,通常也就是运行java虚拟机时所在路径。
二.File的部分方法
Java File类的功能非常强大,利用java基本上可以对文件进行所有操作。
这里将File类中的常用方法进行简单介绍。
操作File路径和名称: File getAbsoluteFile():获取绝对路径。 String getAbsolutePath():获取绝对路径。 String getPath():获取文件路径。 String getName():获取文件名称。 File getParentFile():获取上级目录文件获取上级目录文件。 String getParent():获取上级目录路径。 检测File状态的方法: boolean canExecute():判断是否是可执行文件。 boolean canRead():判断该文件是否可读。 booean canWrite():判断该文件是否可写。 long lastModified():判断该文件的最后修改时间。 long length():获取该文件的长度大小(单位字节)。 |
File类中方法——>文件操作: boolean isFile():是否是文件。 boolean createNewFile():创建新的文件。 static File createTempFiles(String prefix,String suffix):创建临时文件。 boolean delete():删除文件。 void deleteOnExit():在jvm停止时间删除文件。 boolean renameTo(File dest):重新修改名称。 File类中方法——>目录操作: boolean isDirectory():判断是否是目录。 boolean mkdir():创建当前目录。 boolean mkdirs():创建当前目录和上级目录。 String[] list():列出所有文件对象。 File[] listFiles():列出所有文件对象。 static File[] listRoots():流出系统盘符。 |
三.File的实战案例
在不同的系统中,分割目录路径的分隔符也不同。
Unix:使用“/”,来分割目录路径。
Windows:使用“\\”来分割目录路径,但在Windows的java平台,也支持用“/”分割路径。
因为我们不知道以后运行系统平台是什么,就不知道该如何缩写分隔符的问题,因此在FIle类中,提供了两类常量,分别表示路径分割符合属性分割符。
3.1 操作File类路径和名称
public class FileDemo {
public static void main(String[] args) {
//获取属性分割符
char pathSepatator_Char = File.pathSeparatorChar;
String pathSepatator_String = File.pathSeparator;
System.out.println(pathSepatator_Char);
System.out.println(pathSepatator_String);
//获取路径分割符
char Separator_Char = File.separatorChar;
String Separator_String = File.separator;
System.out.println(Separator_Char );
System.out.println(Separator_String);
//表示文件的路径
String path_1 = "D:\\溶酶菌\\大菌.txt";
String path_2 = "D:/溶酶菌/大菌.txt";
String path_3 = "D:"+File.separator+"溶酶菌"+File.separator+"大菌.txt";
System.out.println(path_3);
}
}
运行结果如下:
;
;
\
\
D:\溶酶菌\大菌.txt
3.2 File部分方法