常用方法_文件夹操作
package _01.io.file;
import java.io.File;
import java.io.FilenameFilter;
import java.util.Arrays;
/**
* 5.操作目录
* mkdir() 创建目录->必须确保父目录存在,如果不存在,创建失败
* mkdirs() 创建目录,如果父目录链不存在一同创建
* list() 文件|目录 名字符串形式
* listFiles() 文件|目录 File对象形式
* static listRoots() 根路径
*/
public class Test04_DirMethod {
public static void main(String[] args) {
test1();
}
/**
* mkdir() 创建目录->必须确保父目录存在,如果不存在,创建失败
* mkdirs() 创建目录,如果父目录链不存在一同创建
*/
public static void test1(){
String path ="E:/IOTest/text/a/temp";
File src =new File(path);
src.mkdirs();
}
/**
* list() 文件|目录 名字符串形式
* listFiles() 文件|目录 File对象形式
*/
public static void test2(){
String path ="E:/IOTest/a";
File src =new File(path);
if(src.isDirectory()){
System.out.println("======子目录|文件名===");
String[] subNames =src.list();
for(String temp:subNames){
System.out.println(temp);
}
System.out.println("=====子目录|文件File对象====");
File[] subFiles =src.listFiles();
for(File temp:subFiles){
System.out.println(temp.getAbsolutePath());
}
System.out.println("=====子文件.java对象====");
subFiles =src.listFiles(new FilenameFilter(){
@Override
/**
* dir代表src
*/
public boolean accept(File dir, String name) {
return new File(dir,name).isFile()&&name.endsWith(".java");
}
});
for(File temp:subFiles){
System.out.println(temp.getAbsolutePath());
}
}
}
/**
* 输出子孙级目录|文件的名称(绝对路径)
* 1.listFiles()
* 2.递归
* static listRoots() 根路径
*/
public static void test03(){
String path ="E:/IOTest/";
File parent =new File(path);
printName(parent);
File[] roots =File.listRoots();
System.out.println(Arrays.toString(roots));
for(File temp:roots){
printName(temp);
}
}
public static void printName(File src){
if(null==src || !src.exists()){
return ;
}
System.out.println(src.getAbsolutePath());
if(src.isDirectory()){
for(File sub:src.listFiles()){
printName(sub);
}
}
}
}