자바 지식 공유, IO 스트림은 상세!

자바 IO의 상세한 지식 스트림
, 어떤 사람들은 IO 지식 덜 중요하다고 생각하는 경우가 아니라, IO의 광범위한 사용, IO 할 수있는 최적의 네트워크를 통해 데이터 전송의 가치 구현, 특히 인터넷의 나이, 일반적인 분산 아키텍처의 다양한 입력 한 후 궁극적으로 IO에 반영됩니다. 그리고 많은 제조 업체 얼굴 질문 직렬화처럼 NIO에서 파생를 포함하여 IO의 중요성을 반영합니다. 그래서 IO를 배우고, 그것은 매우 중요한 일이되었다.
IO 기본 개념
IO 단순히 INPUT OUT과, 상기 입력 수단의 출력을 나타내는 것으로 이해 될 수있다. 입력 출력이 기록되고 판독된다.
IO 읽고 자원, 하드 디스크 등 메모리, 키보드, 네트워크와의 쓰기 데이터 수 있습니다.
스트림
IO는 물의 흐름처럼 스위치를 열고 꼭지 물은, 물은 한 단부에서 흘러, 실제 당량 스트림. 각 바이트가 송신 삭제 될 순서대로 배치 될 때 그것을 알 수있다. 정렬 된 데이터 스트림은, 입력 및 출력을 이해하기 위해, 데이터 스트림을 전송한다. 데이터 흐름은 양방향이며, 흐름.
분류 유량
입력 스트림 출력 스트림 : 그것은으로 분할 될 수있는 데이터에 따른.
바이트 스트림 문자 스트림 : 데이터 단위는로 나누어 질 수있다.
눌러 장식 패턴으로 나눌 수있다 : 노드 (아래) 스트리밍 처리 흐름 (상층).
입력 스트림 및 출력 스트림을
입력 스트림은 : 데이터를 판독하지만, 데이터를 기록 할 수 없다. 일반적으로, 네트워크, 메모리에 하드 디스크로부터 데이터를 판독하는데 사용된다.
출력 스트림 : 데이터 만 기록하고, 데이터를 읽을 수 없습니다. 그것은 일반적으로 네트워크, 하드 디스크 메모리에 기록 데이터를 저장하는 데 사용된다.
입력 스트림은 주로의 InputStream 및 판독기 상위 클래스로 구성된다.
주로의 OutputStream과 작가의 부모로서 출력 스트림입니다.
그들은 추상적이고, 따라서 직접 개체를 만들 수 없습니다.
바이트 스트림과 문자 스트림
서로 다른 단위를 제외한 사용 바이트 스트림과 거의 동일한 문자 스트림은 8 비트 바이트의 스트림 바이트의 작동, 작동
문자 스트림 연산 및 16 비트 문자.
바이트 스트림 부모로서 주로의 InputStream 및 OutputStream에 클래스입니다.
부모로서 주인공의 리더에 의해 스트림과 작가.
노드와 프로세스 흐름 스트림
노드 스트림 (상층)
특정 노드에 기록하는 스트림 및 데이터를 판독. 프로그램 실제 데이터 소스에 접속하고, 상기 출력 노드에 연결된 실제 입력.
흐름 (아래) 처리 :
기존 연결 또는 스트림 캡슐화하는 것은 포장을 통해 데이터 스트림의 읽기 및 쓰기 기능을 구현합니다.
공정 스트림의 입력과 출력을 이용하여, 상기 프로그램은 입력 실제 출력 노드 만들어 포장 하층의 처리 흐름을하지 않는 경우.
동일한 절차가 다른 데이터 소스의 입력 및 출력 코드에 액세스하기 위해 사용될 수있다. (감독 트림 모드)
과정이므로 Java 프로그램 무시 입출력 노드가 디스크 또는 다른 네트워크임을 흐름
긴 프로세스 흐름 스트림 랩퍼 이들 노드로로
판독 및 다른 입력 및 출력을 기록 할 동일한 입력 및 출력 코드를 사용 데이터 장치.
실제 노드에 차이가있을 수 있습니다, 노드 및 기본 물리적 스토리지에 직접 연결된 노드 흐름은 노드가 스트리밍 가져옵니다.
이 프로그램은 통합 된 흐름 패키징 공정 흐름 내로 상이한 물리적 노드에있을 수
상이한 물리적 스토리지 노드 리소스를 읽고 쓸 통합 입출력 코드를 사용하는 응용 프로그램.
입출력 공통 시스템 스트림
입출력은, 함수에 따른 종류로 각 기능을 흐르고 바이트 문자 스트림의 스트림을 제공
바이트 스트림과 문자 스트림의 입력 스트림 및 출력 스트림을 제공한다. 입력 인 경우, 입력 및 출력은, 문자 스트림 텍스트이면 출력 이진 콘텐츠는 바이트 스트림 일 수있다.
바이트 스트림
데이터는 항상 바이트의 기본 단위로서 컴퓨터 처리되므로 IO 바이트 스트림은 가장 원시적 인 방법은, 각 바이트 스트림은 바이트 단위로 판독된다. 바이트 스트림은 모든 스트림에 대한 기초뿐만 아니라 다른 고 전제 스트림입니다. 그래서 음악, 사진, 텍스트, 비디오, 각종 문서 및 : 바이트 스트림을 포함한 모든 유형의 데이터를 처리 할 수 있습니다. 대부분의 클래스에서 "스트림"은 바이트 스트림의 마지막입니다.
문자 스트림
문자 스트림은 텍스트 만 처리 문자 단위로 읽기 및 쓰기 수 있습니다. 대부분의 "작가"와 "리더"는 바이트 스트림 클래스의 끝입니다.

추천

출처blog.51cto.com/14623707/2463484