利用listFiles遍历目录

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春季学期课程"));
	}

}	

为什么遍历目录的时候控制台没有打印呢?不知道问题出在哪里了?

望指正!先谢过了!

赵昱权
浏览 1538回答 2
2回答

阿旭_

1、判断目录是否不存在需要加不等号 if (!dir.exists()) { throw new IllegalArgumentException("目录" + dir + "不存在"); } if (!dir.isDirectory()) { throw new IllegalArgumentException("这不是目录"); }2、目录在java要转义写成两个\\Bianli.listDirectory(new File("F:\\2015-2016春季学期课程"));

Exceptions

 Bianli.listDirectory(new File("F:“+Flie.separator+”2015-2016春季学期课程"));这样写~~~
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java