Java에서 디렉토리 생성

Mohd Ebad Naqvi 2023년10월12일
  1. mkdir()함수를 사용하여 Java에서 디렉토리 작성
  2. mkdirs()함수를 사용하여 Java에서 디렉토리 작성
  3. createDirectory()함수를 사용하여 Java에서 디렉토리 작성
  4. createDirectories()함수를 사용하여 Java에서 디렉토리 작성
  5. forceMkdir()함수를 사용하여 Java에서 디렉토리 만들기
Java에서 디렉토리 생성

디렉토리는 컴퓨터에 파일을 저장하기위한 위치 또는 파일 시스템 카탈로그 구조입니다. 우리는 Java에서 다른 파일 처리 작업을 수행합니다. 파일 개체는 새 폴더 또는 디렉터리를 만드는 데 사용됩니다.

이 튜토리얼에서는 Java로 디렉토리를 생성합니다.

mkdir()함수를 사용하여 Java에서 디렉토리 작성

먼저 파일 클래스의 인스턴스가 생성됩니다. 그런 다음 매개 변수가 우리가 만들고자하는 디렉토리 경로 인이 인스턴스로 전달됩니다. 마지막으로mkdir()메소드는 파일 객체를 사용하여 호출되어 필요한 디렉토리를 만듭니다.

예를 들면

import java.io.File;
import java.util.Scanner;
public class CreateDirectory {
  public static void main(String args[]) {
    System.out.println("Path of Directory? ");
    Scanner obj = new Scanner(System.in);
    String path = obj.next();
    System.out.println("Directory Name? ");
    path = path + obj.next();
    File D = new File(path);
    boolean D1 = D.mkdir();
    if (D1) {
      System.out.println("Directory is created successfully");
    } else {
      System.out.println("Error !");
    }
  }
}

출력:

Path of Directory?
C:/
Directory Name? 
TestDirectory
Directory is created successfully

mkdirs()함수를 사용하여 Java에서 디렉토리 작성

mkdir()메소드의 단점은 Java가 한 번에 단일 디렉토리를 작성하는 데만 사용할 수 있다는 것입니다. 이 단점은mkdirs()메소드를 사용하여 해결됩니다.이를 사용하여 디렉토리 계층 구조를 만들 수 있습니다. 즉, 상위 디렉토리 내의 하위 디렉토리 등입니다.

예를 들면

import java.io.File;
import java.util.Scanner;
public class ABC {
  public static void main(String args[]) {
    System.out.println("Path? ");
    Scanner obj = new Scanner(System.in);
    String path = obj.next();
    System.out.println("Name of Directory? ");
    path = path + obj.next();
    File D = new File(path);
    boolean D1 = D.mkdirs();
    if (D1) {
      System.out.println("Folder is created successfully");
    } else {
      System.out.println("Error Found!");
    }
  }

출력:

Path? 
C:/
Name of Directory? 
TestDirectory/TestDirectory1
Folder is created successfully

mkdirs()메소드 사용 TestDirectory1은 상위 디렉토리 TestDirectory 내에 작성됩니다. 이것은mkdir()메소드를 사용하여 수행 할 수 없습니다.

createDirectory()함수를 사용하여 Java에서 디렉토리 작성

Files.createDirectory()는 Java로 새 디렉토리를 만들 수도 있습니다. 동일한 이름의 파일이 이미 존재하면FileAlreadyExistsException이 발생합니다.

예를 들면

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class JavaCreateDirectory {
  public static void main(String[] args) throws IOException {
    String fileName = "C:\EbadTest\NewTest";

    Path path = Paths.get(fileName);

    if (!Files.exists(path)) {
      Files.createDirectory(path);
      System.out.println("New Directory created !   " + filename);
    } else {
      System.out.println("Directory already exists");
    }
  }
}

출력:

New Directory created !  C:\EbadTest\NewTest

디렉토리가 이미 존재하는 경우 코드는 다음 출력을 제공합니다.

Directory already exists

위의 코드는 계층이 존재하지 않는 경우NoSuchFileException을 발생시킵니다.

createDirectories()함수를 사용하여 Java에서 디렉토리 작성

Files.createDirectories()는 상위 디렉토리가 존재하지 않는 경우 새 디렉토리를 만들 수 있습니다. 또한 디렉토리 계층 구조를 만들 수도 있습니다. createDirectories()메소드는 디렉토리가 이미 존재하는 경우 예외를 발생시키지 않습니다.

예를 들면

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class JavaCreateDirectories {
  public static void main(String[] args) throws IOException {
    String fileName = "C:\NonExisting1\NonExisting2";
    Path path = Paths.get(fileName);
    Files.createDirectories(path);
    System.out.println("New Directory created !  " + fileName);
  }
}

출력:

New Directory created !  C:\NonExisting1\NonExisting2

forceMkdir()함수를 사용하여 Java에서 디렉토리 만들기

org.apache.commons.io.FileUtils패키지에는forceMkdir()기능이있어 필요한 경우 디렉토리와 상위 디렉토리를 생성합니다. 디렉토리 또는 디렉토리와 동일한 이름의 파일이 이미 존재하는 경우 예외가 발생합니다.

예를 들면

import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
public class JavaCreateDirectories {
  public static void main(String[] args) throws IOException {
    File directory = new File("C:\Test\Test1");
    FileUtils.forceMkdir(directory);
    System.out.println("New Directory created !");
  }
}

출력:

New Directory created ! 

관련 문장 - Java Directory