아이티클래스

인풋스트림

 

최상위 추상 클래스 inputStream

 

바이트 단위 스트림의 최상위 추상 클래스는 InputStream 클래스와 OutputStream 클래스이다.

 

InputStream 클래스를 상속받는 클래스를 알아보자.

 

InputStream

바이트 단위 입력 스트림 클래스의 최상위 클래스

InputStream is = new InputStream();
	is.read();
	is.skip();
	is.available();
	is.close();
	is.mark();
	is.reset();
	is.markSupported();

 

ByteArrayInputStream

바이트 배열에서 읽는 입력 스트림

버퍼 배열로서 buf를 사용하여 ByteArrayInputStream 를 생성한다. 버퍼배열은 복사되지 않는다. pos의 초기값은 0이다. 그리고 count의 초기값은 buf의 길이이다.

buf - 데이터를 포함하는 바이트 배열

pos - 입력 스트림 버퍼에서 읽을 다음 문자의 인덱스

mark - 스트림의 현재 표시된 위치. 기본값은 0

count - 입력 스트림 버퍼에서 유효한 마지막 문자보다 하나 큰 인덱스

 

FileInputStream

바이트 단위 파일 입력 스트림

파일 시스템에서 경로명에 의해 명명된 실제 파일에 접속하여 오픈하는 것으로 FileInputStream을 생성한다. 새로운 FileDescriptor 객체는 이 파일 연결을 나타내기 위해 생성된다.

명명된 파일이 존재하지 않는다면 일반 파일이 아닌 디렉토리이라면 어떤 이유에서든지 읽기 위해 오픈 될 수 없다. 그래서 FileNotFoundException 발생된다.

 

FilterInputStream

입력 스트림을 필터하는 모든 스트림의 상위 클래스

파일 시스템에서 File 객체에 의해 명명된 실제 파일에 접속하여 오픈하는 것으로 FileInputStream 을 생성한다. 새로운 FileDescriptor 객체는 이 파일 연결을 나타내기 위해 생성된다.

먼저 security manager가 있다면 그것의 checkRead 메소드는 그것의 매개변수로서 name 인수로 호출된다.

명명된 파일이 존재하지 않는다면 또는 일반 파일이 아닌 디렉토리라면 어떤 이유에서든지 읽기 위해 오픈 될 수 없다. 그래서 FileNotFoundException이 발생된다.

 

ObjecInputStream

스트림에서 객체단위로 읽어들이는 입력 스트림

 

PipedInputStream

통신 파이프의 끝을 수신하는 입력 스트림

 

BufferedInputStream

데이터를 블록 단위로 읽어들이는 입력 스트림

BufferedInputStream를 생성한다. 그리고 그것의 인수 입력 스트림 in을 나중에 사용하기 위해 저장한다. 내부 버퍼 배열이 생성되고 buf로 저자된다.

 

DataInputStream

기본 데이터 유형을 읽어 들이는 입력 스트림

FilterInputStream 를 생성하고 그것의 인수 입력 스트림 in를 나중에 사용하기 위해 저장한다.

 

 

제가 작성한 글이 도움이 되셨다면 ♥공감을 꾹 눌러주세요

 

도움이 필요한 내용이 있으시다면 댓글도 남겨주세요

 

 

 

 

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band