fairworld's life

FileFilter, FilenameFilter 본문

Computer Life/Programming Life

FileFilter, FilenameFilter

fairworld 2007. 6. 20. 16:11
java.io 패키지에는 FileFilter 와 FilenameFilter 인터페이스가 있다.

두개의 차이점은 정의된 메소드인데..

FileFilter 에는 accept(File pathname) 이 있고.
FilenameFilter 에는 accept(File dir, String name) 이 있다.

만약 *.exe 파일만 고르고 싶다고 하면 FilenameFilter 를 쓰면 되고...
디렉토리만 골라서 보고 싶을때는 FileFilter 인터페이스를 구현해 주면 된다.

   File[] fileNames = f.listFiles(new FileFilter(){
    public boolean accept(File pathname){     
     return pathname.isDirectory();
    }
   });

확장자로 걸러내고 싶다면...

File[] fileNames = f.listFiles(new FilenameFilter(){
  public boolean accept(File dir, String name){

    return name.endsWith(".exe");

  }

});