总是抛出不是目录的异常
Exception in thread "main" java.lang.IllegalArgumentException: F:\example不是目录
at imooc.file.FileUtils.listDirectory(FileUtils.java:15)
at imooc.file.FileUtilTest1.main(FileUtilTest1.java:10)
package imooc.file;
import java.io.File;
import java.io.IOException;
//列出file类的一些常用的操作比如过渡,遍历等
public class FileUtils {
public static void listDirectory(File dir)throws IOException{
/*
* 列出指定目录下的所有文件*/
if(!dir.exists()){
throw new IllegalArgumentException("目录"+dir+"不存在");
}
if(dir.isDirectory()){
throw new IllegalArgumentException(dir+"不是目录");
}
// String[] filenames=dir.list();
// for(String string:filenames){
// System.out.println(string);
//如果要遍历子目录下的内容就需要构造成file对象做地柜操作,file提供了直接返回file对象的API
File[] files=dir.listFiles();//直接返回的是子目录文件的抽象
// for(File file:files){
// System.out.println(file);
// }
if(files!=null&&files.length>0){
for(File file:files){
if(file.isDirectory()){
//递归
listDirectory(file);
}else{
System.out.println(file);
}
}
}
}
}
package imooc.file;
import java.io.File;
import java.io.IOException;
public class FileUtilTest1 {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
FileUtils.listDirectory(new File("F:\\example"));
}
}