본문 바로가기

개발/Java

[Java] 자바 - 파일 생성 ( File클래스 )

 

< 파일 생성 >

 

- File클래스를 import하여 작업 (java.io 패키지에 존재)

- 경로를 지정할 때, 반드시 실제 존재하는 경로를 제시해야 함

- createNewFile() : 파일을 생성해주는 메소드

- mkdir() : 폴더를 생성해주는 메소드

 

[ 방법 ]

 

1. 별도의 경로지정 없이 파일명 제시하여 생성 : 현재 프로젝트 폴더 내에 파일 생성

File file1 = new File("test.txt"); // 파일명 : test.txt
try {
	file1.createNewFile(); // CheckedException 예외처리 필요 - try ~ catch문 사용
} catch(IOException e) {
	e.printStackTrace();
}

 

2. 경로를 지정하고 파일명을 제시하여 생성 : 지정한 경로에 파일 생성

try {
    File file2 = new File("C:\\file\\test.txt"); // 경로에 역슬래시 2개, 하나만 쓰면 이스케이프문자로 인식
   	// C드라이브의 file폴더에 test.txt 파일 생성
    file2.createNewFile(); // CheckedException 예외처리 필요
} catch (IOException e) {
    e.printStackTrace();
}

 

3. 폴더 생성 후 폴더 안에 파일을 생성 : 현재 프로젝트 폴더 내에, 새로운 폴더를 생성하여 파일 생성

try {
    File forder = new File("fff");
    forder.mkdir(); // 폴더명 : fff
    // mkdir() : 폴더를 생성해주는 메소드 (make directory)
    File file3 = new File("fff\\test.txt");
    file3.createNewFile();
} catch (IOException e) {
    e.printStackTrace();
}

 

4. 경로 지정 후, 폴더 생성 후 파일을 생성 : 지정한 경로에 새로운 폴더를 생성하고, 그 안에 파일 생성

try {
	File fileforder = new File("C:\\file\\fff");
    fileforder.mkdir();
    // C드라이브의 file폴더에 fff폴더 생성
    File file4 = new File("C:\\file\\fff\\test.txt");
    file4.createNewFile();
    // C드라이브의 file폴더의 fff폴더에 test.txt파일 생성
} catch (IOException e) {
    e.printStackTrace();
}

 

[ 기본 제공 메소드 ]

- isFile() : 해당 File객체가 file이면 true, 아니면 false를 반환하는 메소드

- getName() : 파일명을 추출하는 메소드

- getParent() : 상위폴더명을 추출하는 메소드

- length() : 파일 크기를  long형으로 반환하는 메소드

- getAbsolutePath() : 절대경로를 반환하는 메소드