File类的静态方法
File.separator 静态方法 与系统有关的默认名称分隔符 window是 \ linux是 /
File.pathSeparator 静态方法 与系统有关的路径分隔符 window是 ; linux是 :
创建文件和文件夹API
都是成功 true 失败 false
mkdirs 多级文件夹 mkdir 单级文件夹 createNewFile 新建文件
判断方法
boolean exists() 判断 file 路径是否存在
boolean isDirectory() 判断是否是文件夹
boolean isFile() 判断是否是文件
File类的获取方法
getAbsolutePath() 返回File的绝对路径名字 getPath() 将此File转换为路径名字符串 构造方法的路径 getName() 返回此file的 文件名 或者文件夹名 length() 返回此file的长度,字节数 如果文件不存在,返回0 ,新(空)文件 返回0 getParentFile() 返回此file表示的文件或文件夹的 父目录 如果没有 返回 nulllistRoots() 获取所有根目录的盘符list() 获取一个文件夹下所有的文件名和文件夹名,仅仅是这层单级文件夹listFiles() 获取一个文件夹下所有的文件及文件夹对象,也是单级文件夹
递归
通过递归可以获取多级文件的信息 在当前方法调用自己这个方法就是递归
遍历多级文件夹
思路:
通过获取当前文件夹下所有的文件及文件夹,然后遍历,判断是否是文件夹,如果是,调用本方法,继续执行,如果不是,那就是文件,对其进行,获取名称,对象等等的操作
public class DiGui {
public static void main(String[] args) {
File file = new File("D:\\");
diGui(file);
}
private static void diGui(File file) {
if (file.exists()){
File[] files = file.listFiles();
for (File f : files) {
if (f.isDirectory()){
diGui(f);
}else {
System.out.println(f.getName());
/*if (f.getName().toLowerCase().endsWith("java")){ /*将是.java结尾的文件名打印出来*/
System.out.println(f.getName());
}*/
}
}
}
}
}