IO流,File类方法和构造器
File类的使用
File类的理解
File类的一个对象,代表一个文件夹或一个文件目录。
File类的对象常作为一个参数传递到流的构造器中,指明读取或写入的“终点”。
常用构造器
- File(String filePath)
- File(String pareantPath,String childPath)
- File(File pareanFile,String childPath)
public class FileTest {
public static void main(String[] args) {
File file1 = new File("hello.txt");
File file2 = new File("D:\\Code\\eclipse-workspace\\io\\world.txt");
System.out.println(file1); //hello.txt
System.out.println(file2); //D:\Code\eclipse-workspace\io\world.txt
File file3 = new File("D:\\Code\\eclipse-workspace\\io","wwww.txt");
System.out.println(file3); //D:\Code\eclipse-workspace\io\wwww.txt
File file4 = new File(file3,"ccc.txt");
System.out.println(file4); //D:\Code\eclipse-workspace\io\wwww.txt\ccc.txt
}
}
File类常用方法
public class FileTest2 {
public static void main(String[] args) throws IOException {
File file1 = new File("hello.txt");
File file2 = new File("D:\\Code\\eclipse-workspace\\io\\world.txt");
System.out.println(file1.getAbsolutePath()); //获取绝对路径
System.out.println(file1.getPath()); //获取路径
System.out.println(file1.getParent()); //获取上层文件名称
System.out.println(file1.getName()); //获取文件名
System.out.println(file1.length()); //获取文件长度(字节数)
System.out.println(new Date(file1.lastModified())); //获取最后一次修改时间
System.out.println(file2.getAbsolutePath());
//创建磁盘中的文件或文件目录
File file = new File("aa.txt");
if(!file.exists()){
file.createNewFile();
System.out.println("创建成功");
}else {
file.delete();
System.out.println("删除成功");
}
//创建文件目录
// File file3 = new File("D:\\Code\\test");
// file3.mkdir(); //若没有上传文件夹Code,则创建失败
File file4 = new File("D:\\Code\\test\\qq");
boolean mkdirs = file4.mkdirs();
if(mkdirs) {
System.out.println("创建成功目录");
}
}
}
遍历文件夹
public class FileTest3 {
public static void main(String[] args) {
//必须是存在的文件
File file = new File("D:\\Code");
String[] list = file.list();
for(String s : list) {
System.out.println(s);
}
File[] listFiles = file.listFiles();
for(File f:listFiles) { //遍历文件绝对路径
System.out.println(f);
}
}
}