import java.io.File;
public class D1 {
void createFiledir(String dirName) {
File f=new File(dirName);
//boolean success=f.mkdir();//mkdir是用来创建一个目录,只能在已经有的文件夹下,单层目录1
boolean success=f.mkdirs();//创建多层目录2
System.out.println("1"+"---"+success);
}
void createFile(String filename) throws Exception {
File f=new File(filename);
System.out.println("2"+"---"+f.isDirectory());//判断文件是否在目录 3
if(!f.exists()) {
f.createNewFile();
}else {
System.out.println("3"+"---"+f.canWrite());//判断文件是否可写
System.out.println("4"+"---"+f.canRead());//判断文件是否可读
System.out.println("5"+"---"+f.isHidden());//判断文件是否隐藏
System.out.println("6"+"---"+f.getAbsolutePath());//文件的绝对路径
System.out.println("7"+"---"+f.getPath());//文件的相对路径
System.out.println("8"+"---"+f.getParent());//文件的父路径
}
}
void dirFileLength(String dirName) {
File f=new File(dirName);
System.out.println("9"+"---"+f.list().length);//记录文件夹下文件数(文件夹,文件)
}
void printDirFile(String dirName) {
File f=new File(dirName);
for(String str:f.list())//list:获取某个目录下所有文件/目录的数组
System.out.println("10"+"---"+str);//罗列目录下的文件,文件夹
}
void printDirFileAll(String dirName) {
File f=new File(dirName);
File[] file=f.listFiles();//获取到目录下的文件,将它又转换为文件对象
if(file!=null) {
for(File ftemp:file) {
if(ftemp.isDirectory()) {
printDirFileAll(ftemp.getAbsolutePath());//回调,进入一层层目录
}else {
System.out.println("11"+"---"+ftemp.getAbsolutePath());//打印文件的绝对路径
}
}
}
}
static int i=0;
void findDirFileAll(String desName) {
File f=new File(desName);
File[] file=f.listFiles();//获取到目录下的文件,将它又转换为文件对象
if(file!=null) {
for(File ftemp:file) {
if(ftemp.isDirectory()) {
findDirFileAll(ftemp.getAbsolutePath());
}else {
if(ftemp.getName().endsWith(".txt")) {
i++;
System.out.println("12"+"---"+ftemp.getName());//打印.txt后缀的所有文件的绝对路径
}
}
}
}
}
public static void main(String[] args) throws Exception {
D1 file=new D1();
// file.createFiledir("D:\\zuoye/wenjian");//在zuoye文件夹下创建一个文件夹wenjian 已经有了会falst 1
file.createFiledir("D:\\zuoye/wenjian/a/b");//在wenjian下创建了a和b 2
file.createFile("D:\\zuoye/wenjian/a/b/a.txt");//查询文件b在不在a目录下 ture 3
file.dirFileLength("D:\\zuoye");//记录当前文件夹下的数量(文件夹,文件)
file.printDirFile("D:\\zuoye");//罗列当前目录下的文件,文件夹
file.printDirFileAll("D:\\zuoye");//罗列文件夹里所有文件,带路径
file.findDirFileAll("D:\\zuoye");//查询文件夹里所有.txt文件
System.out.println("13"+"---"+".txt文件的个数:"+i);//显示查询后文件夹里所有.txt文件数量
}
}
打印结果:1---false
2---false
3---true
4---true
5---false
6---D:\zuoye\wenjian\a\b\a.txt
7---D:\zuoye\wenjian\a\b\a.txt
8---D:\zuoye\wenjian\a\b
9---5
10---wenjian
10---wenjianjia
10---新建文件夹
10---新建文本文档.txt
10---阿桑 - 寂寞在唱歌.mp3
11---D:\zuoye\wenjian\a\b\a.txt
11---D:\zuoye\新建文件夹\b.txt
11---D:\zuoye\新建文件夹\c.txt
11---D:\zuoye\新建文本文档.txt
11---D:\zuoye\阿桑 - 寂寞在唱歌.mp3
12---a.txt
12---b.txt
12---c.txt
12---新建文本文档.txt
13---.txt文件的个数:4