많은 양의 데이터를 처리할 때, 버퍼를 통해 데이터를 묶어 이동시키는 것이 더욱 효율적이고 빠름
3. Buffer 용어 정리
Buffer : 전송되는 데이터들을 일시적으로 임시 저장하는 메모리
Buffer Flush : 버퍼에 남아 있는 데이터를 출력 (버퍼를 비우는 동작)
BufferReader : 입력
BufferWriter : 출력
4. BufferReader & BufferWriter 사용법
BufferReader 사용
리턴 값은 string으로 고정되기 때문에, 정수 (외 다른 타입)을 입력 받기 위해서는 형 변환 필요
readline()는 줄 단위(Enter)단위로 인식하기 때문에 가공 작업 필요
예외처리 필요 (throws IOException 사용)
public static void main(String[] args) throws IOException {
//선언
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
//줄 단위로 인식
String str = bf.readLine();
//정수형으로 입력을 받는다면 형변환
int i = Integer.parseInt(bf.readLine());
//배열에 공백 단위로 끊어 데이터를 저장하여 사용할 수 있다.
String arr[]=str.split(" ");
System.out.println(str);
System.out.println(i);
System.out.println(arr[0]);
}
BufferWriter 사용
버퍼 관리를 위해 flush() 와 close()를 반듯 호출
bw.writer에는 자동개행이 없기 때문에 \n를 사용
public static void main(String[] args) throws IOException {
//선언
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String text = "hello";
//출력
bw.write(text);
bw.write("입력값은: "+str);
//줄 바꿈
bw.newLine();
//남아있는 데이터 모두 출력
bw.flush();
//스트림 닫기
bw.close();
>
}