在做应用开发的过程中,文件是我们经常需要接触到的东西。在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 |

本文详细介绍了Java中File类的基本概念及使用方法,包括文件和目录的常见操作,如获取名称、路径、判断类型等,同时提供了针对文件和目录的特定操作示例。
758

被折叠的 条评论
为什么被折叠?



