IO流
File
File构造方法
- File类
- File(String pathName)
- File(String parent,String child)
- File(File parent,String child)
File f1 = new File("E:\\xxx\\xx.txt");
System.out.println(f1);
File f2 = new File("E:\\xxx","xx.txt");
System.out.println(f2);
File f3 = new File("E:\\xxx");
File f4 = new File(f3,"xx.txt");
System.out.println(f4);
File创建方法
- creatNewFile()
- mkdir()
- mkdirs()
- 创建多级目录
File f1 = new File("E:\\xxx\\xx.txt");
//创建文件
//如果文件不存在则创建文件,返回true
//如果文件存在则不创建文件,返回false
boolean flag1 = f1.createNewFile();
//创建目录
//如果目录存在则创建目录,返回true
//如果目录存在则不创建目录,返回false
File f2 = new File("E:\\xxxxxx");
boolean flag2 = f2.mkdir();
//创建多级目录
//如果目录存在则创建目录,返回true
//如果目录存在则不创建目录,返回false
File f3 = new File("E:\\1\\2");
boolean flag3 = f3.mkdirs();
File判断和获取功能
- isDirectory()
- isFile()
- exists()
- getAbsolutePath()
- getPath()
- getName()
- list()
- 返回目录字符串数组String[]
- listFile()
- 返回目录File对象数组File[]
File f = new File("myFile\\java.txt");
System.out.println(f.isDirectory());
System.out.println(f.isFile());
System.out.println(f.exists());
System.out.println(f.getAbsolutePath());
System.out.println(f.getPath());
System.out.println(f.getName());
File f2 = new File("E:\\xx");
String[] strArray = f2.lsit();
for(String str:strArray){
System.out.println(str);
}
System.out.println("------------------");
File[] fileArray = f2.listFiles();
for(File file : fileArray){
//System.out.println(file);
if(file.isFile()){
System.out.println(file.getName());
}
}
File删除
-
delete()
-
绝对路径
-
相对路口
File f1 = new File("java.txt");
f1.createNewFile();
//删除
System.out.println(f1.delete());
File f2 = new File("xxx")
f2.mkdir();
//删除
System.out.println(f2.delete());
File f3 = new File("xx");
f3.mkdir();
//没有xx文件夹创建java.txt会报错
File f4 = new File("xx\\java.txt");
f4.createNewFile();
//目录下有内容无法删除
System.out.println(f3.delete());//false
System.out.println(f4.delete());//true
System.out.println(f3.delete());//true
递归
public static int f(int n){
f(n==1||n==2)}{
return 1;
}
return f(n-1)+f(n-2);
}
public class Test{
public static void main(String[] args){
int reuslt = jc(10);
}
public static int jc(int n){
if(n==1){
return 1;
}else{
return n*jc(n-1)
}
}
}
遍历目录
public class DiguiDemo{
public static void main(String[] args){
File srcFile = new File("E:\\xx");
getAllFilePath(srcFile);
}
public static void getAllFilePath(File srcFile){
File[] fileArray = srcFile.listFiles();
if(fileArray!=null){
for(File file:fileArray){
if(file.isDirectory()){
getAllFilePath(file);
}else{
System.out.println(file.getAbsolutePath());
}
}
}
}
}