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);
'방통대 > 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 |