file类
java.io.file类
文件和目录路径名的抽象表示形式。
java把电脑中的文件和文件夹封装为了一个file类。使用file类对文件和文件夹进行操作。
创建一个文件/文件夹
删除文件/文件夹
获取文件/文件夹
判断文件/文件夹是否存在
对文件夹进行遍历
获取文件的大小
file类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法
file
directory:文件夹/目录
path:路径
绝对路径
相对路径
file类的构造方法:
file(parent string,child string)
file(parent file,chile string)
file(pathname string)
获取功能方法
public String getAbsolutePath():返回绝对路径
public String getPath(): 将此file转换为路径名字符串
public String getName(): 返回由此File表示的文件或目录的名称
public long length(): 返回由此file表示的文件的长度
判断功能的方法
public boolean exists() : 此file表示的文件或目录是否实际存在
public boolean isDirectory(): 此file是否为目录
public boolean isFile():
创建删除功能的方法
public boolean createNewFile(): 当且仅当具有该名称的文件尚不存在时,创建一个新的空文件
public boolean delete():
public boolean mkedir(): 创建由此file表示的目录
public boolean mkdirs():创建由此file表示的目录,包括任何必须单不存在的父目录
遍历方法
public String[] list() :返回的字符串在该目录下的抽象路径名的文件和目录命名为数组。
public String[] listFiles(): 文件的路径名为数组。
public String[] list(FilenameFilter filter)
public String[] listFiles(FileFilter filter)
public String[] listFiles(FilenameFilter filter) 方法的重载 ,过滤器 ,Filter为接口 需重写实现类accpet
递归过滤:
public class Demo02 {
public static void main(String[] args) {
File file = new File("C:\\Users\\779\\Desktop\\java学习");
new Demo02().getFiles(file);
}
//递归 打印目录 参数传递file类型的目录
//方法中对目录进行遍历
public void getFiles(File filename){
for (File file : filename.listFiles()) {
if(file.toString().toLowerCase().endsWith(".txt")){
System.out.println(file.getPath());
}
if(file.isDirectory()){
getFiles(file);
}
}
}
}
过滤器递归过滤:
public class Demo02 {
public static void main(String[] args) {
File file = new File("C:\\Users\\779\\Desktop\\java学习");
new Demo02().getFiles(file);
}
//递归 打印目录 参数传递file类型的目录
//方法中对目录进行遍历
public void getFiles(File filename){
for (File file : filename.listFiles(new firstFiltter())) {
if(file.isDirectory()){
getFiles(file);
}else{
System.out.println(file);
}
}
}
}
//重写类实现接口
public class firstFiltter implements FileFilter {
@Override
public boolean accept(File pathname) {
if(pathname.isDirectory()){
return true;
}
return pathname.toString().toLowerCase().endsWith(".txt");
}
}