Java高级系列——File类

在做应用开发的过程中,文件是我们经常需要接触到的东西。在Java中,File是一个相对重要的类,在很多文件处理上我们都会用到该类以及相关的API。但是,从名字上来看,我们可能会认为,File所代表的应该是一个文件,实则不然,在Java中,File代表一个具体的文件名称,也代表一个具体目录的名称。如果要对File所代表的文件进行操作,我们需要借助Java中的输入和输出流的操作,这里我们不谈输入流和输出流,我们仅仅只是说明File的一些常用操作以及当File代表目录时有哪些常用的特殊操作和File代表文件时有哪些常用的操作。

1、File代表目录或文件时的常用操作

方法名称 方法说明
String getName() 返回文件或目录的名称。 这只是路径名称序列中的最后一个名字。 如果路径名的名称序列为空,则返回空字符串。
String getParent() 返回文件或者目录的父目录字符串。如果此File对象所表示的文件或者目录没有父目录,则返回null。
File getParentFile() 返回文件或者目录的父目录File对象。如果没有父目录,则返回null。
String getPath() 返回文件或者目录的路径的字符串形式。
boolean isAbsolute() 返回定义File对象的路径是否是绝对路径
String getAbsolutePath() 获得文件或目录的绝对路径的字符串表示
File getAbsoluteFile() 获得文件或目录的绝对形式,相当于new File(this.getAbsolutePath()) 。
String getCanonicalPath() throws IOException 返回文件或目录的路径名的规范路径名字符串。
File getCanonicalFile() throws IOException 返回文件或目录路径名的规范形式。 相当于new File(this.getCanonicalPath()) 。
boolean exists() 测试文件或目录是否存在
boolean isDirectory() 测试File对象代表的是否是目录
boolean isFile() 测试File对象代表的是否是文件
boolean delete() 删除File对象所表示的文件或目录。
void deleteOnExit() 请求在虚拟机终止时删除File对象表示的文件或目录。

2、File代表一个具体目录的名称时的常用特殊操作

如果File代表一个具体目录名称,那么通过File我们可执行如下的一些操作。

方法名称 方法说明
String[] list() 返回目录中的所有文件名称和目录名称构成的数组
String[] list(FilenameFilter filter) 返回目录中满足指定过滤器的文件名称和目录名称构成的数组
File[] listFiles() 返回目录中的所有文件名称构成的数组
File[] listFiles(FilenameFilter filter) 返回目录中满足指定过滤器的文件和目录构成的数组
File[] listFiles(FileFilter filter) 返回目录中满足指定过滤器的文件和目录构成的数组
boolean mkdir() 创建目录
boolean mkdirs() 创建目录,包括任何必需但不存在的父目录

3、File代表一个具体的文件名称时的常用特殊操作

如果File代表一个具体文件名称,那么通过File我们可执行如下的一些特殊的操作。

方法名称 方法说明
long length() 返回文件长度
boolean createNewFile() throws IOException 创建一个新的文件,如果文件已经存在,返回false;如果文件不存在,创建成功则返回true

猜你喜欢

转载自blog.csdn.net/zyhlwzy/article/details/79842893