File类是IO包中唯一代表磁盘文件本身的对象。通过File来创建,删除,重命名文件。
常用方法:
File file1 = new File("src/a.txt");//指定当前workspace/src下的a.txt文件
File file2 = new File("C:/Users/l_xd/Desktop/Temporary/a");//根据一个路径得到File对象
File file3 = new File("C:/Users/l_xd/Desktop/Temporary/aa", "b.txt");//根据一个目录和一个子文件/目录得到File对象
File file4 = new File(file2, "c.txt");//根据一个父File对象和一个子文件/目录得到File对象
/**
* 创建功能
*/
//在当前workspace/src下创建a.txt这个文件,如果存在则不会在重新创建。注:如果不加.txt也是文件,而不是文件夹。
file1.createNewFile();
file3.mkdir();//创建文件夹 如果存在这样的文件夹,就不创建了
file3.mkdirs();//创建文件夹,如果父文件夹不存在,会帮你创建出来
file3.renameTo(file2);//把文件重命名为指定的文件路径
file3.delete();//删除文件或者文件夹
/**
* 判断功能
*/
Boolean isFile1 = file1.isFile();//a.txt是不是一个文件
Boolean isDirectory1 = file1.isDirectory();//a.txt是不是一个目录
Boolean isExist1 = file1.exists();//a.txt是否存在
Boolean isCanRead = file1.canRead();//判断是否可读
Boolean isCanWirte = file1.canWrite();//判断是否可写
Boolean isHidden = file1.isHidden();//判断是否隐藏
/**
* 获取功能
*/
String absolutePath = file3.getAbsolutePath();//获取绝对路径
String path = file3.getPath();//获取路径
String name = file3.getName();//获取名称、
long bytes = file3.length();//获取长度,字节
long lastModified = file3.lastModified();//获取上一次修改时间,毫秒值
String[] list = file3.list();//获取指定目录下的所有文件或者文件夹的名称数组
File[] listFiles = file3.listFiles();//获取指定目录下的所有文件或者文件夹的File数组
/**
* 一个文件过滤器
*/
File[] listFiles2 = file2.listFiles(new FileFilter() {//过滤器,匿名内部类
@Override
public boolean accept(File arg0) {
return !arg0.isDirectory();
}
});