특정 폴더 내의 모든 폴더명 가져오기

특정 폴더 내의 모든 폴더명 가져오기

1) 특정 폴더 내의 모든 폴더명 가져오기

2) 단, 폴더 안에 폴더를 갖고 있을 경우 안쪽 폴더들만 가져오기

1과 2를 arrayList<String>에 담는다.

 

   File file=new File(“C:\\data\\”);
   List<String> allList=new ArrayList<String>();
   
   boolean conDir=false;
   
   //안에 들어있는 모든 파일 검사
   String[] fList=file.list();
   for(int i=0;i<fList.length;i++){
    
    //디렉토리일경우
    File dir=new File(“C:\\data\\”+fList[i]);
    if(dir.isDirectory()){
     //디렉토리 안쪽의 파일을 배열에 담음
     conDir=false;
     String[] dList=dir.list();
     for(int j=0;j<dList.length;j++){
      //다시 디렉토리일 경우
      if(new File(“C:\\data\\”+fList[i]+”\\”+dList[j]).isDirectory()){
       allList.add(dList[j]);
       //System.out.println(fList[i]+”폴더 내의 “+dList[j]);
       conDir=true;
      }
     }
     if(conDir==false){
      allList.add(fList[i]);
      //System.out.println(fList[i]);
     }
     
    }
   }