import java.io.File; public class ListDemo {
public static void main(String[] args) {
ListDemo();
}
public static void ListDemo() {
File dir = new File("F:\\"); File[] file = dir.listFiles();
for(File files : file){
System.out.println(files);
}
}
}
上面代码没有指定过滤器,会遍历所有文件包括隐藏的文件
下面定义一个过滤隐藏文件的过滤器
import java.io.File;
import java.io.FileFilter; public class FilterBydden implements FileFilter {
public boolean accept(File pathname) {
//如果是隐藏的就为true
return !pathname.isHidden();
}
}
import java.io.File; public class ListDemo {
public static void main(String[] args) {
ListDemo();
}
public static void ListDemo() {
File dir = new File("F:\\"); File[] file = dir.listFiles(new FilterBydden());
for(File files : file){
System.out.println(files);
}
}
}
这里用的是ListFiles()方法,该方法是获取指定目录下的文件,而List()方法是获取指定目录下的文件名
下面定义一个过滤后缀名的过滤器 可以过滤.java文件或.txt文件等等
import java.io.File;
import java.io.FilenameFilter; public class SuffixFilter implements FilenameFilter {
private String suffix; public SuffixFilter(String suffix) {
super();
this.suffix = suffix;
}
public boolean accept(File dir, String name) {
return name.endsWith(suffix);
}
}
import java.io.File;
import com.io.sequenceinputstream.demo.suffixFilter; public class ListDemo {
public static void main(String[] args) {
ListDemo();
}
public static void ListDemo() {
File dir = new File("F:\\"); File[] file = dir.listFiles(new suffixFilter(".java"));
for(File files : file){
System.out.println(files);
}
}
}