Recursively create directory

前端 未结 10 634
萌比男神i
萌比男神i 2020-12-30 23:20

Does anyone know how to use Java to create sub-directories based on the alphabets (a-z) that is n levels deep?

 /a
    /a
        /a
        /b
        /c
           


        
10条回答
  •  失恋的感觉
    2020-12-30 23:54

    I would write a little utility method that takes the start and the end letter as well as the desired deepth as parameters. This method calls itself recursively till done:

     private static void createAlphabetFolders(File parent, int start, int end, int deepth){
    
        if(deepth <= 0){
          return;
        }
    
        for (int i=start; i < end; i++){
    
          // create the folder
          String folderName = "" + ((char) i);
          File folder = new File(parent, folderName);
          System.out.println("creating: " + folder.getPath());
          folder.mkdirs();
    
          // call recursively
          createAlphabetFolders(folder, start, end, deepth-1);
        }
      }
    

    One would call it like this:

    createAlphabetFolders(new File("abctest"), 'A', 'E', 5);
    

提交回复
热议问题