下面的程序可能对你有点启发 import java.io.*;
public class JavaFilter implements FilenameFilter{
  public JavaFilter() {
  }
  public boolean accept(File dir, String name){
    return name.endsWith(".txt");
  }

  public static void main(String[] args) {

    File f = new File("c:\\.");
    String[] a = f.list(new JavaFilter());
    for ( int i=0; i< a.length; i++){
      System.out.println(a[i]);
    }
  }
}

以上代码实现了 dir c:\*.txt的功能。

解决方案 »

  1.   

    import java.io.*;
    public class JavaFilter extends Objext implements FilenameFilter{
      public JavaFilter(){
      }
      public boolean accept(File dir,String name){
       return name.endsWith(".java");
      }
    }
    这是显示以.java为扩展名的文件
    file类的list()获取目录中的文件列表(返回到一个字符串数组)
      

  2.   

    Thinking in java里有例子!
      

  3.   

    thinking in java 里有啊、~
    getDirctory getFile~~
      

  4.   

    一个标准的递归问题。
    参考一下这段代码吧,专为你写的哟:)
    ============================================================
    import java.io.*;public class ListFile {
        public static void main(String[] args) {
            ListFile l = new ListFile();
            l.recursivePrint(new File((String)System.getProperty("user.dir")), 0);
            return;
        }
        
        public void recursivePrint(File f, int indent) {
            StringBuffer buf = new StringBuffer();
            for (int i = 0; i < indent; i++) {
                buf.append("  ");
            }
            System.out.println(buf+f.getName());
            if (f.isDirectory()) {
                File[] children = f.listFiles();
                for (int i = 0; i < children.length; i++) {
                    recursivePrint(children[i], indent+1);
                }
            }
        }
    }