728x90
package kr.or.ddit.basic;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Arrays;
public class ByteArrayIOTest02 {
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];
//byte배열을 이용해서 입력하는 스트링 객체 생성
ByteArrayInputStream input = new ByteArrayInputStream(inSrc);
//byte배열을 이용해서 출력하는 스트링 객체 생성
ByteArrayOutputStream output = new ByteArrayOutputStream();
try {
while (true) {
//input.available ==> 읽어올 수 있는 남아있는 데이터의 개수를 반환한다.
if(input.available() <= 0) {
break;
}
//잘못된 경우
// input.read(temp);
//
// output.write(temp);
// read(배열)메서드의 반환값이 실제 읽어온 개수를 반환한다.)
int len = input.read(temp); //실제 읽어온 데이터의 개수를 구한다.
//temp배열의 내용 중에서 0 번째부터 len개수만큼 출력한다.
output.write(temp, 0, len);
System.out.println("반복문 안에서 temp : " + Arrays.toString(temp));
}
outSrc = output.toByteArray();
input.close();
output.close();
System.out.println("inSrc => " + Arrays.toString(inSrc));
System.out.println("outSrc => " + Arrays.toString(outSrc));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
'JAVA > IO' 카테고리의 다른 글
자바(파일복사) FileCopy 예제 (0) | 2023.06.24 |
---|---|
자바(데이터) DataIO_Test 예제 (0) | 2023.06.24 |
자바(바이트) ByteArrayIO_Test01 예제 (0) | 2023.06.24 |
자바(버퍼드) BufferedIO_Test02 예제 (0) | 2023.06.24 |
자바(버퍼드) BufferedIO_Test01 예제 (0) | 2023.06.24 |