[JAVA] 간단한 파일 입출력(FILE I/O) 구현

프로그래밍 팁 2014.09.10 01:13

 자바로 프로그래밍을 하시는 분들이라면 가끔 파일 입출력(File I/O)를 써 줘야할 때가 간혹 발생할 겁니다.

평소엔 잘 쓰지도 않던 것인데 갑작스럽게 사용하게 되면 사용법이 헷갈려서 헤매는 경우도 많지요.


 아래는 JAVA 환경에서 간단하게 구현해 본 파일 입출력입니다. 프로그램은 먼저 FileOutputStream을 통해 파일을 기록한 후 해당 파일을 다시 FileInputStream을 통해 읽어 들이는 구조로 되어 있습니다.


※ 파일 입출력을 위해 사용된 PrintStream 클래스와 BufferedReader 클래스의 경우 새로 선언되더라도 가비지 컬렉터로 바로 사라지지 않습니다. 해당 클래스를 모두 사용한 후 반드시 close() 함수를 통해 해당 스트림을 종료하셔야 합니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public static void main(String[] args) {
        // TODO Auto-generated method stub
        File file;
        
        try {
            file = new File("file.txt");
            
            PrintStream ps = new PrintStream(new FileOutputStream(file));
            PrintStream stdout = System.out;
            System.setOut(ps);
            System.out.print("Hello, World!\n http://elecs.tistory.com/");
            ps.close();
            
            BufferedReader br = new BufferedReader(new FileReader(file));
            System.setOut(stdout);
            String str;
            while(true){
                str = br.readLine();
                if(str==null)
                    break;
                System.out.println(str);
            }
            br.close();
            
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }




프로그램을 실행하면 다음과 같이 프로젝트 폴더 내에 file.txt 파일이 생성된 것을 확인하실 수 있습니다.



생성된 파일을 다시 읽어 다음과 같이 출력하실 수 있습니다.