package ioDemo;
import java.io.File;
import java.io.IOException;
public class Bianli {
public static void listDirectory(File dir)throws IOException {
if(dir.exists()){
throw new IllegalArgumentException("目录"+dir+"不存在");
}
if(dir.isDirectory()){
throw new IllegalArgumentException("这不是目录");
}
File [] files=dir.listFiles();
if (files!=null&&files.length>0) {
for (File file : files) {
if(file.isDirectory()){
listDirectory(file);
}else{}
System.out.println(file);
}
}
}
}
//在另一个测试类当中
import java.io.File;
import java.io.IOException;
public class Test {
public static void main(String[] args)throws IOException {
Bianli.listDirectory(new File("F:\2015-2016春季学期课程"));
}
} 为什么遍历目录的时候控制台没有打印呢?不知道问题出在哪里了?望指正!先谢过了!
2 回答
已采纳
阿旭_
TA贡献217条经验 获得超353个赞
1、判断目录是否不存在需要加不等号
if (!dir.exists()) { throw new IllegalArgumentException("目录" + dir + "不存在"); } if (!dir.isDirectory()) { throw new IllegalArgumentException("这不是目录"); }
2、目录在java要转义写成两个\\
Bianli.listDirectory(new File("F:\\2015-2016春季学期课程"));
Exceptions
TA贡献1条经验 获得超1个赞
Bianli.listDirectory(new File("F:“+Flie.separator+”2015-2016春季学期课程"));这样写~~~
添加回答
举报
0/150
提交
取消