[java] Java 파일 입출력 처리

Java에서 파일을 읽고 쓰는 작업은 매우 일반적입니다. 이번 글에서는 Java에서 파일 입출력을 처리하는 방법을 알아보겠습니다.

1. 파일 읽기

Java에서 파일을 읽기 위해서는 FileInputStream 또는 BufferedReader 클래스를 활용할 수 있습니다. 아래는 FileInputStream을 사용한 예제입니다.

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

public class FileReadExample {
    public static void main(String[] args) {
        try {
            File file = new File("path/to/file.txt");
            FileInputStream fis = new FileInputStream(file);

            int content;
            while ((content = fis.read()) != -1) {
                System.out.print((char) content);
            }

            fis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 예제에서는 FileInputStream을 사용하여 파일을 열고, read() 메서드를 통해 파일의 내용을 읽어옵니다. read() 메서드는 읽은 바이트를 리턴하므로 이를 char 타입으로 변환하여 출력합니다. 파일을 모두 읽으면 파일을 닫아주는 것을 잊지 말아야 합니다.

2. 파일 쓰기

Java에서 파일을 쓰기 위해서는 FileOutputStream 또는 BufferedWriter 클래스를 활용할 수 있습니다. 아래는 FileOutputStream을 사용한 예제입니다.

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileWriteExample {
    public static void main(String[] args) {
        try {
            File file = new File("path/to/file.txt");
            FileOutputStream fos = new FileOutputStream(file);

            String content = "Hello, World!";
            fos.write(content.getBytes());

            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위 예제에서는 FileOutputStream을 사용하여 파일을 열고, write() 메서드를 통해 파일에 데이터를 씁니다. write() 메서드는 byte[] 타입을 인자로 받으므로, 문자열을 getBytes() 메서드를 통해 바이트 배열로 변환하여 씁니다. 파일을 쓰고 나면 파일을 닫아주는 것을 잊지 말아야 합니다.

이상으로 Java에서 파일 입출력 처리 방법에 대해 알아보았습니다. 파일을 읽거나 쓸 때는 예외처리에 주의하고, 파일을 모두 사용한 후에는 반드시 닫아주어야 합니다. 자세한 내용은 Java API 문서를 참조하시기 바랍니다.

참고 자료