본문 바로가기

Java

[JAVA] 특정 디렉토리에 있는 파일list가져오기

알아서 해석 ㅋ
  /**
   * @return HashMap
   * 특정 디렉토리를 찾아 모든 파일을 가져온다.
   */
  private HashMap<String, List<File>> fileGetterToLocal(String uploadPath) throws Exception{
   HashMap<String, List<File>> returnFile = null;
   try{
    List<File> excelFiles = fetchFileNames(new File(uploadPath), ".xls");
    List<File> txtFiles = fetchFileNames(new File(uploadPath), ".txt");
    returnFile = new HashMap<String,List<File>>();
    returnFile.put("excel", excelFiles);
    returnFile.put("txt", txtFiles);

   }catch(Exception e){
    e.printStackTrace();
    throw e;
   }
   return returnFile;
  }

  /**
   * @param lists
   * @param suffix
   * @param flag
   * @return
   */
  private List<File> fetchFileNames(File lists, String suffix) {
   List<File> fileList = new ArrayList<File>();
   File[] list = lists.listFiles();

   if (list != null) {
    for (int i = 0; i < list.length; i++) {
     if (list[i].isDirectory() == true) {
      //디렉토리는 사용하지 않는다.
      //fileList.addAll(fetchFileNames(list[i], suffix, flag));
     } else {
      fileList.add(list[i]);
     }
    }
   }
   return fileList;
  }