코딩의 숲 2020. 9. 8. 23:23

버퍼란 데이터가 움직이기전에 머무르는 장소라고 생각하면 편한다.

데이터를 하나하나 옮기지 않고 버퍼라는 저장공간에 저장했다가 한번에 내보내는 것이다

EX:

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
31
32
33
34
import java.io.BufferedOutputStream;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.Scanner;
 
public class buffer_stream {
    public static FileReader FR=null;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        File root=new File("C:\\Temp\\test22.txt");
        try {
            FR=new FileReader(root);//버퍼가 5를 넘어가면 5까지 출력
            BufferedWriter BF=new BufferedWriter(new OutputStreamWriter(System.out,"utf-8"),5);//크기가 5인 버퍼를 만듬
            int c;
            while ((c=FR.read())!=-1) {
                BF.write((char)c);
                
            }//5까지만 버퍼를 출력
            //new Scanner(System.in).nextLine();//.엔터누르면 남아잇는 버퍼 모두출력 이제 이 Scanner 객체를 지정할수없음 일회용임 다시말해 닫을 수도없다는 의미 노란줄이 뜨는이유임
            //BF.flush();
            BF.close();
            FR.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();// 오류메세지 출력
        }
    }
 
}
 
cs