File类的介绍:
1、File类和四大家族没有关系,所以File类不能完成文件的读和写
2、File对象代表什么? - 文件和目录路径名的抽象表示形式 - 例如: D:\java_study 这是一个File对象 D:\java_study\java_note.txt 这也是一个File对象 - 一个File对象有可能对应的是目录,也可能是文件。 File只是一个路径名的抽象表示形式。
其中的常用方法使用:
- createNewFile():以文件的形式创建出来
- mkdir() : 以目录的形式创建出来
- mkdirs() : 以多重目录的形式新建
- delete() :删除某个文件或目录
- deleteOnExit() : 删除某个文件或目录并退出
- getParent() :获取该文件的父路径
- getParentFile() :返回该路径名的父目录的路径名
- getAbsolutePath() :获取绝对路径
-getName():获取文件名
-isDirectory():判断是否是一个目录
-isFile():判断是否是一个文件
-lastModified():获取最后一次该文件的修改时间
-listFiles():获取当前目录下所有的子文件,重点
File f1 = new File("D:\\java_study\\day31\\file");
//判断是否存在
System.out.println(f1.exists());
//如果D:\java_study\day31\file不存在,则以文件的形式创建出来
/*if (!f1.exists()){
f1.createNewFile();
}*/
//如果D:\java_study\day31\file不存在,则
/*if (!f1.exists()){
f1.mkdir();
}*/
//创建多重目录
File f2 = new File("D:/java_study/day31/file");
/*if (!f2.exists()){
//多重目录的形式新建
f2.mkdirs();
}*/
/*if (f2.exists()){
f2.deleteOnExit();
}*/
//-----------------------------------------------------------------------------
File f3 = new File("D:/java_study/day31/学习方法.txt");
//以下的几种获取路径的方法,都是不管后边的文件是否存在,都能正常获取
// 获取该文件的父路径,不管后边的文件“学习方法.txt”是否存在,都能正常获取
String parentPath = f3.getParent();
System.out.println(parentPath);
//另一种方法获取
File parentFile = f3.getParentFile();
System.out.println("获取绝对路径:"+ parentFile.getAbsolutePath());
File f4 = new File("copy");
System.out.println("绝对路径"+f4.getAbsolutePath());
//-------------------------------------------------------------------------------
File f1 = new File("D:\\java_study\\day31\\src\\com\\io\\copy");
//获取文件名
System.out.println("文件名:"+f1.getName());
//判断是否是一个目录
System.out.println(f1.isDirectory());
//判断是否是一个文件
System.out.println(f1.isFile());
//获取最后一次该文件的修改时间
// 返回的时间是一个毫秒数,这个毫秒数是从1970开始计数的
long haoMiao = f1.lastModified();
System.out.println(haoMiao);
//创建一个时间对象,
Date time = new Date(haoMiao);
//创建一个时间显示格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
//将时间按照设定的格式转换为字符串
String strTime = sdf.format(time);
System.out.println(strTime);
//-----------------------------------------------------------------------------------
//File[] listFiles()
// 获取当前目录下所有的子文件
File f = new File("D:/java_study/day31/src/com/io");
//创建一个数组用来存放所有的子文件
File[] files = f.listFiles();
//foreach遍历
for (File file:files) {
System.out.println(file.getName());
}