import java.io.*;
import java.util.*;
interface MyFilenameFilter
{
public boolean myAccept(File dir,String name);
}
class MyFile
{
private File dir;
MyFile(File dir)
{
this.dir = dir;
}
public String[] myList(MyFilenameFilter filter)
{
String[] arr = dir.list();
ArrayList<String> al = new ArrayList<String>();
for(int x=0; x<arr.length; x++)
{
if(filter.myAccept(dir,arr[x]))
al.add(arr[x]);
}
return al.toArray(new String[al.size()]);
}
}
class MyFilenameFilterDemo
{
public static void main(String[] args)
{
File dir = new File("c:\\");
MyFile mf = new MyFile(dir);
/*
String[] arr = mf.myList(new MyFilenameFilter()
{
public boolean myAccept(File dir,String name)
{
// System.out.println(new File(dir,name));
return !(new File(dir,name).isHidden());
}
});
*/
for(String s: arr)
{
System.out.println(s);
}
}
}