一、JavaFile介绍
java.io.File,该类以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。
需要注意在路径中要么一个斜杠"/",要么两个反斜杠"\\"。
二、构造方法
File(String pathname) | 通过给定路径名字符串创建一个File实例对象 |
File(String parent,String child) | 通过parent路径名字符串和child路径名字符串创建一个File实例对象 |
File(File parent,String child) | 通过parent抽象路径名和child路径名字符串创建一个File实例对象 |
三、常用方法
创建与删除类方法 | |
boolean createNewFile() | 当且仅当不存在时,创建一个空文件夹 |
boolean mkdir() | 创建单级目录 |
boolean mkdirs() | 创建多级目录 |
boolean delete() | 删除单个文件或目录 |
判断类方法 | |
boolean existe() | 判断文件或目录是否存在 |
boolean isDirectory() | 判断抽象路径名表示的是否是一个目录 |
boolean isFile() | 判断抽象路径名表示的是否是一个标准文件 |
boolean isAbsolute() | 判断抽象路径名是否为绝对路径 |
boolean isHidden() | 判断抽象路径名表示的是否是一个隐藏文件 |
获取类方法 | |
String getAbsolutePath() | 获取文件绝对路径,返回路径字符串 |
File getAbsoluteFile() | 获取文件绝对路径,返回File对象 |
String getParent() | 获取当前路径的父路径,返回字符串 |
File getParentFile() | 获取当前路径的父路径,返回File对象 |
String getPath() | 获取当前路径 |
String getName() | 获取当前文件或目录名称 |
long lastModified() | 获取文件最后修改时间,一般配合Date()类使用 |
long length() | 获取文件长度 |
long getTotalSpace() | 获取文件所在磁盘分区大小[1kb=1024b,1Mb=1024kb,1Gb=1024Mb,1Tb=1024Gb] |
boolean renameTo(File newFile) | 为文件改名字 |
String[] list() | 获取当前路径下的所有文件和目录,返回字符串数组 |
File[] listFile() | 获取当前路径下的所有文件和目录,返回File对象数组 |
四、列出一个文件夹下的所有文件以及目录
import java.io.File;
public class Demo {
/**
* 列出一个文件夹下的所有文件以及目录
*
*/
public static void main(String[] args) {
File file = new File("D:\\Program Files\\JAVA\\workspace");
showList(file);
}
private static void showList(File file) {
if (file.isDirectory()) {//如果是目录
System.out.println("文件夹:" + file.getName());
File[] listFiles = file.listFiles();//获取当前路径下的所有文件和目录,返回File对象数组
for (File f : listFiles) {//将目录内的内容对象化并遍历
showList(f);
}
} else if (file.isFile()) {//如果是文件
System.out.println("文件:" + file.getName());
}
}
}