package com.company01.File;
/*
java.lang.Object;
java.io.File;
1.File类和流无关,不能通过该类完成文件的读和写
2.File是文件和目录路径名的抽象表示形式
File代表的是硬盘上的Directory和file
*/
import java.io.*;
public class Test01 {
public static void main(String[] args) throws Exception{
File f1 = new File("test01.txt");
File f2 = new File("E:\\mydemo\\Java\\IDEA");
File f3 = new File("E:/mydemo");
System.out.println(f1.exists()); // true
System.out.println(f2.exists()); // true
System.out.println(f3.exists()); // true
File f4 = new File("E:/TT");
System.out.println(f4.exists()); // false
// 如果不存在,则创建
if(!f4.exists()){
// 创建目录
//f4.mkdir();
// 创建文件
f4.createNewFile();
}
File f5 = new File("E:/A/B/C/D/E");
if(!f5.exists()){
// 创建多重目录
f5.mkdirs();
}
}
}
package com.company01.File;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test02 {
public static void main(String[] args) throws Exception{
// 1.获取绝对路径
File f1 = new File("test01.txt");
String absolutePath = f1.getAbsolutePath();
System.out.println(absolutePath); // E:\mydemo\Java\IDEA\test\test01.txt
// 2.获取文件名
System.out.println(f1.getName()); // test01.txt
// 3.获取父路径
System.out.println(f1.getParentFile()); // null
System.out.println(f1.getAbsoluteFile().getParentFile()); // E:\mydemo\Java\IDEA\test
// 4.判断是File还是Directory还是File
System.out.println(f1.isDirectory()); // false
System.out.println(f1.isFile()); // true
// 5.获取文件最后一次修改时间
long t = f1.lastModified();
Date date = new Date(t);
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:MM:ss SS").format(date));
//2019-12-09 09:12:49 134
// 6.获取文件长度(字节数)
System.out.println(f1.length());
// 7.列出子文件
File f2 = new File("E:\\mydemo\\Java\\IDEA");
File[] fs = f2.listFiles();
// 遍历
for(File f:fs){
System.out.println(f.getAbsolutePath());
/*
E:\mydemo\Java\IDEA\Project01
E:\mydemo\Java\IDEA\Project02
E:\mydemo\Java\IDEA\Project04
E:\mydemo\Java\IDEA\test
*/
}
}
}
package com.company01.File;
/*
使用递归,找出某目录下的所有子目录以及子文件。
*/
import java.io.*;
public class Test03 {
public static void main(String[] args) {
File f = new File("E:\\mydemo\\Java\\IDEA\\test");
method1(f);
}
public static void method1(File f){
if(f.isFile()){
return ;
}
// f有两种可能,f可能是文件,也可能是目录
// 先当做目录
File[] fs = f.listFiles();
for(File subF : fs){
System.out.println(subF.getAbsolutePath());
method1(subF);
}
}
}
来源:CSDN
作者:Lank蓝柯
链接:https://blog.csdn.net/MrWanC/article/details/103465809