Java - File mkdirs() method



Description

The Java File mkdirs() method creates the specified directory along with any necessary but nonexistent parent directories. It returns true if the directories were created successfully and false if they already exist or the operation fails.

Declaration

Following is the declaration for java.io.File.mkdirs() method −

public boolean mkdirs()

Parameters

NA

Return Value

The method returns true if the directories was created, with all necessary parent directories; else false.

Exception

  • SecurityException − If a security manager exists and its methods denies access to create the named directory.

Example - Usage of File mkdirs() method

The following example shows the usage of Java File mkdirs() method. We've created a File reference. Then we're creating a File Object using a directory path which is present in the given location. Using mkdirs() method, we're trying to create the folder and getting the result in boolean variable. Then we're printing the status of directory being created or not.

FileDemo.java

package com.tutorialspoint;

import java.io.File;

public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
      boolean bool = false;      
      try {
         f = new File("F:/Test2/TutorialsPoint/Java");
         
         // create the directories
         bool = f.mkdirs();
         
         // print
         System.out.print("Directory created? "+bool);
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result−

Directory created? true

Now, you can check that directory structure is created.

Example - Usage of File mkdirs() method

The following example shows the usage of Java File mkdirs() method. We've created a File reference. Then we're creating a File Object using a directory path which is already present in the given location. Using mkdir() method, we're trying to create the folder and getting the result in boolean variable. Then we're printing the status of directory being created or not.

FileDemo.java

package com.tutorialspoint;

import java.io.File;

public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
      boolean bool = false;      
      try {
         f = new File("F:/Test2/TutorialsPoint/Java");
         
         // create the directories
         bool = f.mkdirs();
         
         // print
         System.out.print("Directory created? "+bool);
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result−

Directory created? false

Example - Creating Nested Directories

The following example shows the usage of Java File mkdirs() method.

FileDemo.java

package com.tutorialspoint;

import java.io.File;

public class FileDemo {
   public static void main(String[] args) {      
      // Specify a nested directory path
      File directories = new File("ParentDirectory/ChildDirectory/SubDirectory");

      // Create all non-existent directories
      if (directories.mkdirs()) {
         System.out.println("Directories created successfully: " + directories.getAbsolutePath());
      } else {
         System.out.println("Failed to create directories. They may already exist.");
      }
   }
}

Possible Output

Let us compile and run the above program, this will produce the following result−

Directories created successfully: C:\Users\YourName\ParentDirectory\ChildDirectory\SubDirectory

Explanation

  • The File object is created with a nested directory structure ("ParentDirectory/ChildDirectory/SubDirectory").

  • The mkdirs() method ensures that all missing parent directories are created.

  • If the directories are successfully created, it prints their absolute path.

  • If the operation fails (e.g., the directories already exist), it prints an appropriate message.

java_io_file_methods.htm
Advertisements