文件路径名过滤
public static void main(String [] args){
File f=new File("路径名");
String [] s=f.list(new Filefilter());
for(int i = 0;i<s.length;i++)
System.out.println(s[i]);
}
}
class Filefilter implements FilenameFilter{
public boolean accept(File dir, String name){
System.out.println("Root:"+dir.getPath()+"\t subRoot:"+name);
File file=new File(dir,name);
if(file.isFile()&&name.indexOf(".java")!=-1)
return true;
else
return false;
}
只要创建了Filefilter的对象,就会直接自动调用accept了?不用filefilter.accept()?
系统是怎么将DIR和NAME参数传入的?
------解决方案--------------------[code=Java][/code]
String[] s = file.list(new FilenameFilter(){
public boolean accept(File dir , String name){
return name.endsWith(".java");
}
})
通常都使用匿名内部类吧。
------解决方案--------------------
------解决方案--------------------File file = new File(path);
File[] arrayFiles = file.listFiles();
这样写你就不用纠结了~