티스토리 뷰
기본적인 IO 처리
- 자바에서 입력과 출력은 stream을 통해서 이루어집니다.
- 일반적으로 IO라고 하면 파일IO만을 생각할 수 있는데, 어떤 디바이스를 통해 이뤄지는 작업을 모두 IO라고 합니다.
- 네트워크를 통해서 다른 서버로 데이터를 전송하거나
- 다른 서버로부터 데이터를 전송 받는 것도 IO에 포함됩니다.
- 간단하게 콘솔에 출력하는 것도 stream을 통해서 출력하는 것입니다.
스트림을 읽는 데 관련된 주요 클래스는 다음과 같습니다.
- 스트림을 쓰는 데 관련된 클래스는 Input을 Output으로 바꾸면 됩니다.
- 여기에 명시된 모든 입력과 관련된 스트림들을 java.io.InputStream 클래스로부터 상속받았습니다.
- 바이트 기반의 스트림 입력을 처리하기 위해서는 이 클래스의 하위 클래스를 사용합니다.
| 이름 | 내용 |
|---|---|
| ByteArrayInputStream | 바이트로 구성된 배열을 읽어서 입력 스트림을 만듭니다. |
| FileInputStream | 이미지와 같은 바이너리 기반의 파일의 스트림을 만듭니다. |
| FilterInputStream | 여러 종류의 유용한 입력 스트림의 추상 클래스입니다. |
| ObjectInputStream | ObjectOutputStream을 통해서 저장해 놓은 객체를 읽기 위한 스트림을 만듭니다. |
| PipedInputStream | PipedOutputStream을 통해서 출력된 스트림을 읽어 처리하기 위한 스트림을 만듭니다. |
| SequenceInputStream | 별개인 두 개의 스트림을 하나의 스트림으로 만듭니다. |
- 문자열 기반의 스트림을 읽기 위해서 사용하는 클래스는 java.io.Reader 클래스의 하위 클래스들입니다.
| 이름 | 내용 |
|---|---|
| BufferedReader | 문자열 입력 스트림을 버퍼에 담아서 처리합니다. 일반적으로 문자열 기반의 파일을 읽을 때 가장 많이 사용됩니다. |
| CharArrayReader | char의 배열로 된 문자 배열을 처리합니다. |
| FilterReader | 문자열 기반의 스트림을 처리하기 위한 추상 클래스입니다. |
| FileReader | 문자열 기반의 파일을 읽기 위한 클래스입니다. |
| InputStreamReader | 바이트 기반의 스트림을 문자열 기반의 스트림으로 연결하는 역할을 수행합니다. |
| PipedReader | 파이프 스트림을 읽습니다. |
| StringReader | 문자열 기반의 소스를 읽습니다. |
정리
- 바이트 단위로 읽거나, 문자열 단위로 읽을 때 중요한 것은 한 번 open한 스트림은 반드시 닫아야 한다는 것이다.
- 스트림을 닫지 않으면 나중에 리소스가 부족해질 수 있다.
'Language > Java' 카테고리의 다른 글
| Synchronized (0) | 2018.06.01 |
|---|---|
| Thread Class & Runnable Interface (0) | 2018.06.01 |
| Process & Thread (0) | 2018.06.01 |
| Static (0) | 2018.06.01 |
| System Class (0) | 2018.06.01 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- HTTP
- Groovy
- cors
- ngrinder
- Token
- 대규모
- stateless
- redis
- stateful
- web
- script
- SPOF
- Runnable
- URI
- auth
- synchronized
- Java
- Cross Origin
- JWT
- class
- Spring Boot
- output
- MongoDB
- thread
- NoSQL
- ehcache
- https
- iinput
- cross
- 404
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함
