import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
public class myFileSearch {
public static void main(String[] args) {
String s1="d:\\";
final String s2=".doc";
myFileSearcHelper(s1,s2);
//List list = new ArrayList();
//System.out.println(myFileSearcHelper(s1,s2,list));
}
static List myFileSearcHelper(String s1,final String s2,final List list){
File f= new File(s1);
File[] temp =f.listFiles();
if(temp.length!=0){
File[] str =f.listFiles(new FilenameFilter(){
public boolean accept(File f,String mys){
if(new File(f,mys).isDirectory()){
myFileSearcHelper(new File(f,mys).getAbsolutePath(),s2,list);
return true;
}
else if(new File(f,mys).isFile()){
return mys.endsWith(s2);
}
return false;
}
});
for(File myFlie :str){
list.add(myFlie);
}
}
return list;
}
static void myFileSearcHelper(String s1,final String s2){
File f= new File(s1);
File[] temp =f.listFiles();
if(temp.length!=0){
String[] str =f.list(new FilenameFilter(){
public boolean accept(File f,String mys){
if(new File(f,mys).isFile()){
return mys.endsWith(s2);
}
return false;
}
});
for(String myFile :str){
System.out.println(myFile);
}
}}
}