重学JAVA_IO流——File类

概述

File类是位于java.io下以抽象的方式表示文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。File对象代表磁盘中实际存在的文件和目录,该类实现了Serializable和Comparable接口,意味着该类支持序列化,并且实例对象可进行比较。

File类不能用于文件的内容访问。如果需要对文件内容进行访问需要依靠流。

File类API

1、常量
常量名 描述
pathSeparator 与系统相关的路径分隔符字符,为方便起见,表示为字符串。
pathSeparatorChar 与系统相关的路径分隔符
separator 与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串。
separatorChar 与系统相关的默认名称分隔符。

代码示例:

public class PathDemo01 {
    
    
	public static void main(String[] args) {
    
    
		System.out.println("名称分隔符:" + File.separatorChar);
		System.out.println("名称分隔符:" + File.separator);
		System.out.println("路径分隔符:" + File.pathSeparatorChar);
		System.out.println("路径分隔符:" + File.pathSeparator);
	}
}

运行结果:

名称分隔符:\
名称分隔符:\
路径分隔符:;
路径分隔符:;

补充:
Windows系统和Linux系统分隔符的区别

操作系统 名称分隔符 路径分隔符
Windows系统 \ ;
Linux系统 / :
2、构造方法
构造方法 描述
File​(File parent, String child) 从父抽象路径名和子路径名字符串创建新的 File实例。
File​(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
File​(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例。
File​(URI uri) 通过将给定的 file: URI转换为抽象路径名来创建新的 File实例。
3、get方法
方法名 描述
getName​() 返回由此抽象路径名表示的文件或目录的名称。
getPath​() 将此抽象路径名转换为路径名字符串。
getAbsolutePath​() 返回此抽象路径名的绝对路径名字符串。
getParentFile​() 返回此抽象路径名的父目录的抽象路径名,如果此路径名不指定父目录,则返回 null 。
getAbsoluteFile​() 返回此抽象路径名的绝对形式。
4、文件状态判断
方法名 描述
exists​() 测试此抽象路径名表示的文件或目录是否存在。
isDirectory​() 测试此抽象路径名表示的文件是否为目录。
isFile​() 测试此抽象路径名表示的文件是否为普通文件。
isHidden​() 测试此抽象路径名命名的文件是否为隐藏文件。
canExecute​() 测试应用程序是否可以执行此抽象路径名表示的文件。
canRead​() 测试应用程序是否可以读取由此抽象路径名表示的文件。
canWrite​() 测试应用程序是否可以修改由此抽象路径名表示的文件。
5、创建、删除文件和文件夹
方法名 描述
delete​() 删除由此抽象路径名表示的文件或目录。
createNewFile​() 当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。
mkdir​() 创建由此抽象路径名命名的目录。
mkdirs​() 创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。
6、列出子目录下的所有文件、目录
方法名 描述
list​() 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。
list​(FilenameFilter filter) 返回一个字符串数组,命名由此抽象路径名表示的目录中满足指定过滤器的文件和目录。
listFiles​() 返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。
listFiles​(FileFilter filter) 返回一个抽象路径名数组,表示由此抽象路径名表示的满足指定过滤器的目录中的文件和目录。
listRoots​() 列出可用的文件系统根。

猜你喜欢

转载自blog.csdn.net/qq_42886163/article/details/103903862