티스토리 뷰
PrintWriter 사용 이유
- 편리한 메서드: print(), println(), printf()와 같은 메서드를 제공하여 다양한 형식의 데이터를 손쉽게 출력할 수 있습니다.
- 자동 플러시(autoFlush): PrintWriter를 생성할 때 autoFlush를 true로 설정하면, println() 등의 메서드를 호출할 때 자동으로 버퍼가 플러시되어 데이터를 즉시 전송합니다. 이는 네트워크 소켓과 같이 실시간 데이터 전송이 중요한 경우에 유용합니다.
- 버퍼링: 출력 데이터를 버퍼에 저장한 후 한 번에 출력하여 성능을 향상시킵니다. 필요시 flush() 메서드를 호출하여 강제로 데이터를 출력할 수도 있습니다.
주요 메서드
- print(): 다양한 데이터 타입을 출력합니다. (문자열, 정수, 부동 소수점 등)
- println(): 데이터를 출력하고 새로운 줄로 이동합니다.
- flush(): 버퍼를 강제로 플러시하여 출력 스트림에 데이터를 씁니다.
- close(): 출력 스트림을 닫습니다.
주의사항
- 예외 처리: PrintWriter는 메서드 호출 중 발생하는 입출력 예외를 던지지 않고 내부적으로 처리하므로, 스트림 상태를 주기적으로 확인하거나 명시적으로 checkError() 메서드를 호출하여 오류를 확인해야 합니다.
예시 코드)
'Java' 카테고리의 다른 글
1 : N 소켓 양방향 통신 (0) | 2024.05.24 |
---|---|
Java(1:1 양방향 통신(채팅 기본 기능 구현)) (0) | 2024.05.22 |
Java(1:1 단방향 통신(서버측)) (0) | 2024.05.22 |
Java(Socket) (0) | 2024.05.22 |
Java(고수준 스트림(Data/Object Stream)) (0) | 2024.05.22 |