引言
- 或许后浪真的可气,普通人同样不缺乏努力,只是我们无能为力;
知识点总结
File类
路径
路径分为绝对路径与相对路径;Windows中的文件路径分隔符为 ‘\’,但是‘\’是转义字符,用‘\’表示;Linux中是‘/’。
- 绝对路径:以盘符开头的路径;
- 相对路径:相对于本项目的根目录;
构造方法
1.File(File parent, String child)
从父抽象路径名和子路径名字符串创建新的 File实例。
File file1=new File("C:\\Users\\Administrator\\Desktop");
System.out.println(file1);
2.File(String pathname)
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
File file2=new File("C:\\Users\\Administrator","\\Desktop");
System.out.println(file2);
3.File(String parent, String child)
从父路径名字符串和子路径名字符串创建新的 File实例。
File file4=new File("C:\\Users\\Administrator");
File file3=new File(file4,"\\Desktop");
System.out.println(file3);
结果
上面三种构造方法表示的是同一路径;
常用方法
获取方法
1.getAbsolutePath()
返回此抽象路径名的绝对路径名字符串。
2.getName()
返回由此抽象路径名表示的文件或目录的名称。
3.getPath()
将此抽象路径名转换为路径名字符串;返回的是文件构造方法中传递的路径。
4.length()
返回由此抽象路径名表示的文件的长度;文件夹没有大小这个属性,返回0。
File file1=new File("C:\\Users\\Administrator\\Desktop");
System.out.println(file1.getAbsoluteFile());
System.out.println("================================");
File file2=new File("1.txt");
System.out.println("构造方法中的路径是"+file2.getPath());//获取构造方法是添加的路径
System.out.println("绝对路径是"+file2.getAbsolutePath());
System.out.println("文件的名称是"+file2.getName());
System.out.println("================================");
File file3=new File("C:\\Users\\Administrator\\Desktop\\临时.doc");
long length=file3.length();
System.out.println("文件:临时.doc的大小为:"+length);
结果是
判断方法
1.isFile()
测试此抽象路径名表示的文件是否为普通文件。
2.isDirectory()
测试此抽象路径名表示的文件是否为目录。
3.exists()
测试此抽象路径名表示的文件或目录是否存在。
File file1=new File("C:\\Users\\Administrator\\Desktop\\临时.doc");
System.out.println("该文件存在吗?:"+file1.exists());
System.out.println("是文件吗?"+file1.isFile());
File file2=new File("C:\\Users\\Administrator\\Desktop\\");
System.out.println("是文件夹吗?"+file2.isDirectory());
输出结果
创建/删除功能
1.mkdir()
创建由此抽象路径名命名的目录;当该目录树中有不存在的文件夹时,创建失败。
2.mkdirs()
创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录。
3.delete()
删除由此抽象路径名表示的文件或目录。
4.createNewFile()
当且仅当具有该名称的文件尚不存在时,原子地创建一个由该抽象路径名命名的新的空文件。
File file1=new File("C:\\Users\\Administrator\\Desktop\\test1.txt");
file1.createNewFile();
file1.delete();
File file2=new File("C:\\Users\\Administrator\\Desktop\\A\\B\\C\\D");
System.out.println("创建的目录树是否成功?"+file2.mkdirs());
输出结果
遍历目录
1.list()
返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。
File file1=new File("C:\\Users\\Administrator\\Desktop\\截图");
String[] arr=file1.list();
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
输出结果
2.listFiles()
返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。
File file1=new File("C:\\Users\\Administrator\\Desktop\\截图");
File[] arr=file1.listFiles();
for(File s: arr){
System.out.println(s);
}