package com.neuedu.chapter02;
import java.io.File;
import java.io.FilenameFilter;
public class FileListTest {
public static void main(String[] args) {
//创建File对象
File f= new File("C:\\Users\\Xiaolei\\Desktop\\java");
//判断File对象是否是目录
if(f.isDirectory()) {
//list():将目录下的列表输出为字符串数组
String [] files = f.list();
if(null !=files && files.length>0) {
//遍历数组,显示目录中的文件列表
for(String file:files) {
System.out.println(file);
}
}
//把当前目录和列表呈现出来
//listFiles():将目录下列表输入为File对象数组
File [] fs = f.listFiles();
for(File file:fs) {
System.out.println(file.getName());
}
//返回由此抽象路径名所表示的目录中的文件和目录的名称所组成字符串数组
//FilenameFilter 接口的实现类的对象,达到将符合条件的文件放到数组中
String [] filestxt = f.list(new FilenameFilter() {
//accept(File dir, String name)
//测试指定文件是否应包含在文件列表中。
// dir - 找到该文件的目录。
// name - 文件的名称。
@Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
return name.endsWith(".txt");
//返回文件名是否以.txt结尾
}
});
//遍历f.list文件列表
for(String file:filestxt){
System.out.println(file);
}
}else {
System.out.println("不是一个目录,不能列出对应的目录列表");
}
}
}