언어/JAVA
[JAVA] 스트림(stream)
Sime
2016. 9. 26. 09:48
스트림은 순서가 있는 데이터의 연속적인 흐름 이다.
예를 들어 입출력을 물의 흐름처럼 간주하는 것이다.
입출력의 단위에 따라 분류
입출력 스트림 |
바이트 스트림 |
입력 바이트 스트림 |
출력 바이트 스트림 |
||
문자 스트림 |
입력 문자 스트림 |
|
출력 문자 |
스트림 |
데이터 싱크 스트림 |
데이터를 소스에서 읽거나 목적지에 기록 |
데이터 처리 스트림 |
들어오는 데이터를 가공하여 내보냄 |
기본적으로 많이 쓰는 스트림에는 FileInputStream, FileOutputStream 이 있다.
<예제>
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 32 33 34 35 36 37 38 39 | import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Test01 { public static void main(String[] args) throws IOException { //외부 동작시 예외처리를 해줘야 함 FileInputStream in = null; FileOutputStream out = null; try { int c; out = new FileOutputStream("data.txt",false); //생성자에는 목적지 파일에 대한 정보를 담아야함 for(int i =0;i<10;i++) out.write(i); //파일의 경로에는 절대경로, 상대경로, 정규 경로가 있다. in = new FileInputStream("data.txt"); while((c = in.read()) != -1){ System.out.println(c+" "); } } finally { try{ if(in != null) in.close(); //메모리 관리 등을 위해 스트림 사용 후 닫아 줘야함\ if(out != null) out.close(); }catch (Exception e) { e.printStackTrace(); } } } } | cs |
결과 :
0
1
2
3
4
5
6
7
8
9
!) 메모리 관리 등을 위해 스트림 사용 후 닫아 줘야함
반응형