티스토리 뷰
반응형
IOEx1
import java.io.*; import java.util.Arrays; class IOEx1 { public static void main(String[] args) { byte[] inSrc = {0,1,2,3,4,5,6,7,8,9}; byte[] outSrc = null; ByteArrayInputStream input = null; ByteArrayOutputStream output = null; input = new ByteArrayInputStream(inSrc); output = new ByteArrayOutputStream(); int data = 0; while((data = input.read())!=-1) { output.write(data); // void write(int b) } outSrc = output.toByteArray(); System.out.println("Input Source :" + Arrays.toString(inSrc)); System.out.println("Output Source :" + Arrays.toString(outSrc)); } }
결과
Input Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Output Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
IOEx2
import java.io.*; import java.util.Arrays; class IOEx2 { public static void main(String[] args) { byte[] inSrc = {0,1,2,3,4,5,6,7,8,9}; byte[] outSrc = null; byte[] temp = new byte[10]; ByteArrayInputStream input = null; ByteArrayOutputStream output = null; input = new ByteArrayInputStream(inSrc); output = new ByteArrayOutputStream(); input.read(temp,0,temp.length); // 읽어 온 데이터를 배열 temp에 담는다. output.write(temp,5, 5); // temp[5]부터 5개의 데이터를 write한다. // while문을 사용하지 않음 outSrc = output.toByteArray(); System.out.println("Input Source :" + Arrays.toString(inSrc)); System.out.println("temp :" + Arrays.toString(temp)); System.out.println("Output Source :" + Arrays.toString(outSrc)); } }
결과
Input Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
temp :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Output Source :[5, 6, 7, 8, 9]
IOEx3
import java.io.*; import java.util.Arrays; class IOEx3 { public static void main(String[] args) { byte[] inSrc = {0,1,2,3,4,5,6,7,8,9}; byte[] outSrc = null; byte[] temp = new byte[4]; // 이전 예제와 배열의 크기가 다르다. ByteArrayInputStream input = null; ByteArrayOutputStream output = null; input = new ByteArrayInputStream(inSrc); output = new ByteArrayOutputStream(); // try { while(input.available() > 0) { input.read(temp); output.write(temp); // System.out.println("temp :" + Arrays.toString(temp)); } } catch(IOException e) {} // outSrc = output.toByteArray(); System.out.println("Input Source :" + Arrays.toString(inSrc)); System.out.println("temp :" + Arrays.toString(temp)); System.out.println("Output Source :" + Arrays.toString(outSrc)); } }
결과
Input Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
temp :[8, 9, 6, 7]
Output Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 6, 7]
IOEx4
import java.io.*; import java.util.Arrays; // JDK1.5부터 추가된 클래스이다. class IOEx4 { public static void main(String[] args) { byte[] inSrc = {0,1,2,3,4,5,6,7,8,9}; byte[] outSrc = null; byte[] temp = new byte[4]; ByteArrayInputStream input = null; ByteArrayOutputStream output = null; input = new ByteArrayInputStream(inSrc); output = new ByteArrayOutputStream(); try { while(input.available() > 0) { int len = input.read(temp); // 읽어 온 데이터의 개수를 반환한다. output.write(temp, 0, len); // 읽어 온 만큼만 write한다. } } catch(IOException e) {} outSrc = output.toByteArray(); System.out.println("Input Source :" + Arrays.toString(inSrc)); System.out.println("temp :" + Arrays.toString(temp)); System.out.println("Output Source :" + Arrays.toString(outSrc)); } }
결과
Input Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
temp :[8, 9, 6, 7]
Output Source :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
반응형
'IT & programming > Java' 카테고리의 다른 글
8/23 - 채팅 소스, 클라이언트 쓰레드 부분 (0) | 2012.08.23 |
---|---|
8/23 - 채팅 소스, 서버 구축 (0) | 2012.08.23 |
8/21 - AWT, 로그인 예제, Adapter클래스 이용 (0) | 2012.08.21 |
8/20 - AWT, 로그인 창 예제 (0) | 2012.08.20 |
8/20 - AWT, 이벤트 처리방법, 예제 Frametest3 (0) | 2012.08.20 |
댓글