File类
File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法。
String pathSeparator=File.pathSeparator;
System.out.println(pathSeparator);//;//称为路径分隔符
String separator=File.separator;
System.out.println(separator);// \or/ //linux or windows
File(String pathname);
File(File parent, String child);
File(String parent, String child) ;//均可构造对象使用
getName();//返回结尾文件或目录名称
getAbsolutePath();//返回绝对路径
getPath();//与toString();本质一样,路径是什么就返回什么
length();//文件夹没有大小;路径不存在返回0;获取文件大小
exists();//路径是否存在
isDirectory();//是否以文件夹结尾
isFile()://是否以文件结尾
creatNewFile()://文件不存在,创建文件,返回true
mkdir();//创建单级文件夹,同理
delete();
File的遍历
File类的遍历
1.liet()
File file=new File("c:\\Users\\itcast");
String[] arr=file.list();
for(String name:arr){
System.out.println(name);
}
2.listFiles
File file=new File("c:\\Users\\itcast");
File[] files=file.listFiles();
for(File name:files){
System.out.println(name);
}
FileFilter接口
FileFilter接口
接口中只有accept抽象方法,需要实现类重写accept方法,或直接使用匿名内部类。
File file=new File("c:\\Users\\itcast");
File[] flies=file.listFiles(new FileFilter() {
@Override
public boolean accept(File pathname) {
return pathname.isDirectory()||pathname.getName().endsWith(".java");//可以达到筛选的目的
}
});
for (File f : flies) {
if (f.isDirectory()){
method(f);
}else
System.out.println(f);
}