1.File类的概述和构造方法
1.1File类的概述
- java.io.File 类是文件和文件夹路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。
1.2File类的构造方法
- public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
- public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。
- public File(File parent, String child) :从父抽象路径名和子路径名字符串创建新的 File实例。
代码如下
package com.itheima.demo5_各种流.file类;
import java.io.File;
public class test {
public static void main(String[] args) {
// 路径是真实存在的:
File f1 = new File("E:\\hiemafuxi\\resource\\hb.jpg");
File f2 = new File("E:\\hiemafuxi", "resource\\hb.jpg");
File parent = new File("E:\\hiemafuxi");
File f3 = new File(parent, "resource\\hb.jpg");
System.out.println("f1:"+f1);
System.out.println("f2:"+f2);
System.out.println("f3:"+f3);
// 路径不真实存在:
File f11 = new File("G:\\szitheima108\\day10\\aaa\\hb1.jpg");
File f12 = new File("G:\\szitheima108","day10\\aaa\\hb1.jpg");
File parent1 = new File("G:\\szitheima108");
File f13 = new File(parent1,"day10\\aaa\\hb1.jpg");
System.out.println("f11:"+f11);
System.out.println("f12:"+f12);
System.out.println("f13:"+f13);
}
}
f1:E:\hiemafuxi\resource\hb.jpg //可以点开
f2:E:\hiemafuxi\resource\hb.jpg
f3:E:\hiemafuxi\resource\hb.jpg
f11:G:\szitheima108\day10\aaa\hb1.jpg // 不能点开
f12:G:\szitheima108\day10\aaa\hb1.jpg
f13:G:\szitheima108\day10\aaa\hb1.jpg
2.File类常用方法
2.1获取功能的方法
-
public String getAbsolutePath() :返回此File的绝对路径名字符串。
-
public String getPath() :将此File转换为路径名字符串。
-
public String getName() :返回由此File表示的文件或目录的名称。
-
public long length() :返回由此File表示的文件的长度。 不能获取目录的长度。
方法演示,代码如下:
package com.itheima.demo5_各种流.file类;
import java.io.File;
public class test3 {
public static void main(String[] args) {
// 文件:
// 创建File对象,表示文件路径
File f1 = new File("E:\\hiemafuxi\\resource\\hb.jpg");
System.out.println("获取绝对路径:"+f1.getAbsolutePath());
System.out.println("获取构造路径:"+f1.getPath());
System.out.println("获取字节流大小:" + f1.length());
System.out.println("获取名字:" + f1.getName());
}
}
结果
获取绝对路径:E:\hiemafuxi\resource\hb.jpg
获取构造路径:E:\hiemafuxi\resource\hb.jpg
获取字节流大小:7374339
获取名字:hb.jpg
3.File类遍历目录方法
-
public String[] list() :获取File目录中的所有子文件或子目录的名称。
-
public File[] listFiles() :获取File目录中的所有子文件或子目录的路径。
代码实现
package com.itheima.demo5_各种流.file类;
import java.io.File;
public class test4 {
public static void main(String[] args) {
File f1 = new File("E:\\hiemafuxi\\resource");
/*
- public String[] list() :获取File目录中的所有子文件或子目录的名称。
- public File[] listFiles() :获取File目录中的所有子文件或子目录的路径。
*/
// 获取File目录中的所有子文件或子目录的名称。
String[] arr1 = f1.list();
for (String name :arr1){ //增强for循环
System.out.println(name);
}
}
}
结果
hb.jpg