JAVA

BufferedReader, BufferedWriter

kiwiiiv 2021. 11. 24. 17:13

버퍼를 이용하여 입출력을 수행하기 때문에 효율Good

 

 

 

BufferedReader

Enter기준(Line 기준)으로 입력 받음   -> 저장 후 가공 필요

 

 

br.readLine() : 라인 단위로 읽음

int c=br.read() : 한 글자를 읽어 정수형으로 반환

 

Ex)

public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String line = br.readLine();
        int cards = Integer.valueOf(line.split(" ")[0]);            //split 후 Integer 형으로 변환

	...
    
        line = br.readLine();
        //String 값을 split 후 long으로 형변환
        card = Arrays.stream(line.split(" ")).mapToLong(Long::parseLong).toArray();

        ...

 

 

 

BufferedWriter

버퍼를 사용하므로, 마지막에 flush(), close() 필요

개행 미포함

 

bw.newLine() : 개행

bw.flush() : 남아있는 데이터들을 모두 출력(버퍼 비우기)

bw.close() : 출력문 close

 

 

BufferedWriter는 long, double 같은 자료형에 대해 바로 출력이 불가능해서.. 

사실 System.out.print를 더 많이 쓰는 편

 

 

 

 

 


언어 별 출력 시간

출력 속도 비교 (acmicpc.net)

 

출력 속도 비교

여러가지 언어와 출력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다. 방법: 총 N개의 줄에 1부터 10,000,000까지의 자연수를 한 줄에 하나씩 출력하는 시간을 측정. 10번 측정해서 평

www.acmicpc.net

 

 

[Java] 빠른 입출력_BufferedReader & BufferedWriter (velog.io)

 

[Java] 빠른 입출력_BufferedReader & BufferedWriter

Scanner로 입력받는 것 보다 BufferedReader로 입력 받는 것이 빠르고System.out.println으로 출력하는 것 보다 BufferedWriter로 출력하는 것이 빠르다.| Scanner | BufferedReader |\|:-------

velog.io

 

[Java 자바 입출력] BufferedReader/BufferedWriter (tistory.com)

 

[Java 자바 입출력] BufferedReader/BufferedWriter

[자바 입출력 함수] BufferedReader / BufferWriter BufferedReader/BufferedWriter은 이름처럼 버퍼를 이용해서 읽고 쓰는 함수입니다. 이 함수는 버퍼를 이용하기 때문에 이 함수를 이용하면 입출력의 효율이..

jhnyang.tistory.com