본문 바로가기
방통대/Java

[Java] 9-1 입출력 스트림

by 꿈꾸는 몽나 2024. 4. 19.
728x90

 

1. 입출력 스트림

: Java 프로그램에서 스트림을 통해 입출력을 수행할 수 있음

-입력 스트림은 데이터 생산자(소스)와 프로그램을 연결

-출력 스트림은 프로그램과 데이터 소비자(목적지)를 연결

 

: 입출력 종류(파일, 주변 장치, 네트워크 소켓 등)에 상관없이 동일한 방법으로 프로그램 작성

: 입출력에 필요한 스트림 클래스는 java.io 패키지에서 제공

 

-스트림의 정의와 특성

: 데이터 생산자(또는 데이터 소비자)와 프로그램 사이 데이터의 흐름

: 순서가 있는 일련의 데이터 흐름으로, 정해진 방향으로 전달되고, 순차적으로 접근할 수 있음

 

 

 

2. 입력 스트림과 출력 스트림

: 프로그램은 입력 스트림으로부터 데이터를 읽을 수 있음

-외부로부터 데이터를 읽어 프로그램으로 가져오기 위한 스트림

-데이터 소스가 설정되어야 함

 

: 프로그램은 출력 스트림으로 데이터를 쓸 수 있음

-프로그램에서 데이터를 생성하여 외부로 보내기 위한 스트림

-데이터 목적지가 설정되어야 함

 

 

 

 

3. 스트림의 분류

: 바이트 스트림과 캐릭터 스트림

-바이트 스트림은 byte단위로 데이터를 다룸

*관련 클래스는 xxxInputStream과 xxxOutputStream

-캐릭터 스트림은 char 단위로 데이터를 다룸

*관련 클래스는 xxxReader과 xxxWriter

 

: 기본 스트림과 보조 스트림

-기본 스트림은 입출력 기능을 제공하는 스트림

-보조 스트림은 자체적으로 입출력 기능을 수행할 수는 없으며, 기본 스트림과 함께 사용되어 보조 기능을 제공하는 스트림

 

 

 

 

4. 스트림 관련 클래스

: java.io 패키지의 스트림 클래스

 

 

 

 

5. 프로그램에서 스트림 사용하기

: 프로그램에서 어떤 스트림 클래스를 사용할 것인가?

-입력 스트림? 출력 스트림?

-데이터 생산자와 소비자를 결정

*기본 스트림을 반드시 사용해야 함

 

-문자 단위? 바이트 단위?

-보조 스트림이 필요한가?

*필요하다면 기본 스트림 객체를 먼저 생성하고, 기본 스트림을 감싸 보조 스트림 객체를 생성함

FileInputStream fis = new FileInputStream("text.txt");
BufferedInputStream bis = new BufferedInputStream(fis);

 

728x90

'방통대 > Java' 카테고리의 다른 글

[Java] 9-3 파일 입출력  (0) 2024.04.19
[Java] 9-2 바이트 스트림과 캐릭터 스트림  (0) 2024.04.19
[Java] 8강. java.lang 패키지 연습 문제  (0) 2024.04.12
[Java] 8-5 System 클래스  (0) 2024.04.12
[Java] 8-4 포장 클래스  (0) 2024.04.12