天天看點

目錄清單的顯示

import java.io.File;

import java.io.FilenameFilter;

public class DirectoryList {

 public static void main(String[] args) {

  try{

   File path = new File(".");

   String[] myList;

   if(args.length == 0){       //不含自變量則顯示所有的檔案

    myList = path.list();

   }

   else{           //利用過濾器顯示相關檔案

    myList = path.list(new DirectoryFilter(args[0]));

   }

   for(int i = 0; i < myList.length;i++){     //輸出檔案清單

    System.out.println(myList[i]);

   }

  }catch(Exception e){

   e.printStackTrace();

  }

 }

}

class DirectoryFilter implements FilenameFilter{  //檔案過濾器方法

 String myString ;

 DirectoryFilter(String myString){

  this.myString = myString;

 }

 public boolean accept(File dir,String name){

  //去除所有路徑資訊

  String f  = new File(name).getName();

  return f.indexOf(myString) != -1;

 }

}