BufferedReader / BufferedWriter
BufferedReader/BufferedWriter는 버퍼를 이용해 입출력의 효율을 높이게 해주는 역할을 한다. 버퍼를 이용하면 입출력의 효율이 매우! 좋아지기 때문에 사용하는게 좋다.
- BufferedReader의 readLine()을 사용하면 데이터를 라인단위로 읽어올 수 있다.
InputStreamReader / OutputStreamWriter
바이트 기반 스트림을 문자 기반 스트림으로 연결시켜주는 역할과 바이트 기반 스트림의 데이터를 지정된 인코딩의 문자 데이터로 변환하는 작업을 수행한다.
InputStreamReader(InputStream in) | OS에서 사용하는 기본 인코딩을 문자로 변환한다. |
InputStreamReader(InputStream in, String encoding) | 지정된 인코딩을 사용한다. |
String getEncoding() | 인코딩을 알려준다. |
OutputStreamWriter(OutputStream in) | OS에서 사용하는 기본 인코딩을 문자로 변환한다. |
OutputStreamWriter(OutputStream in, String encoding) | 지정된 인코딩을 사용한다. |
String getEncoding() | 인코딩을 알려준다. |
import java.io.*;
public class JavaStreamTest {
public static void main(String args[]) throws IOException {
//기본 인코딩 문자로 변환하는 IOnputStreamReader생성
InputStreamReader isr= new InputStreamReader(System.in);
//사용자의 화면입력을 입력 받기 위해 선언, InputStreamReader와 연결해서 입력값을 인코딩 문자로 변환한다.
BufferedReader br = new BufferedReader(isr);
//출력값을 기본 인코딩의 문자로 변환한다.
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
//사용 운영체제의 인코딩
bw.write("인코딩" +isr.getEncoding());
//콘솔값의 라인 단위로 읽는다.
bw.write(br.readLine());
//버퍼를 닫아 출력값을 확인
bw.close();
}
}
현재 운영체제의 인코딩은 UTF8
콘솔창에 test로 입력후, br.readLine()으로 콘솔값을 라인단위로 읽어 출력했다.
300x250
'Languague > Java' 카테고리의 다른 글
[Java] 자바 스트림(Stream) (0) | 2024.03.15 |
---|