# File类总结
1.File静态变量
@Test
public void test01(){
System.out.println(File.separator);//分隔符,windows系统为\ linux系统为/
System.out.println(File.pathSeparator);//文件结尾分隔符;
}
2.File构造
@Test
public void test02(){
//1.一个参数的构造String类型 new File(String path);
File f1 = new File("C:\\workspace\\1.txt");
//2.两个参数的构造 new File(File f,String path);
File f2 = new File(new File("C:\\workspace\\"), "1.txt");
//2.两个参数的构造 new File(String parentPath,String childPath);
File f3 = new File("C:\\workspace\\", "1.txt");
}
3.File的获取方法
@Test
public void test03(){
File f1 = new File("C:\\workspace\\1.txt");
//1.获取路径
String path = f1.getPath();//C:\workspace\1.txt
String path2 = f1.getAbsolutePath();//C:\workspace\1.txt
//2.获取文件/目录名称
String name = f1.getName();//1.txt
//3.获取文件大小
long len = f1.length();//返回文件大小,单位字节
//4.获取父级目录
String parent = f1.getParent();//C:\workspace
}
4.File的判断方法
@Test
public void test02(){
File file = new File("E:\\tmp\\1.txt");
//1.判断文件是否存在
System.out.println(file.exists());
//2.判断是否是文件
System.out.println(file.isFile());
//3.判断是否是文件
System.out.println(file.isDirectory());
}
5.File创建和删除
@Test
public void test03() throws IOException {
//1.创建文件
File file = new File("E:\\tmp\\1.txt");
file.createNewFile();
//2.创建目录
File file2 = new File("E:\\tmp\\12");
file2.mkdir();
//3.创建多级目录
File file3 = new File("E:\\tmp\\12");
file3.mkdirs();
//4.删除文件或目录
file.delete();
}
6.File遍历
@Test
public void test04() throws IOException {
File file = new File("E:\\tmp");
//1.遍历得到String类型的数组
String[] list = file.list();
for (String str : list) {
System.out.println(str);
}
//2.遍历得到File类型的数组
File[] files = file.listFiles();
for (File f : files) {
System.out.println(f);
}
}
7.使用递归处理文件
public void test05(File file) throws IOException {
File[] fileArry = file.listFiles();
for (File f : fileArry) {
if(f.isFile()){
System.out.println(f);
}else{
test05(f);
}
}
}