바이트 스트림은 바이트 단위로 바이너리 데이터가 흐르는 스트림 입니다. 바이트 스트림은 바이너리 데이터를 있는 그대로 출력합니다.
그렇기 때문에, 이미지나 동영상 파일 입출력에 필수적이고, 문자들로 구성된 텍스트 파일도 입출력 할 수 있습니다. (텍스트 파일 - 바이너리 데이터 값을 문자화 하여 사용 가능)
바이너리 데이터를 파일에 그대로 저장할 때 FileOutputStream 클래스를 사용합니다.
FileOutputStream 클래스의 생성자는 다음 표와 같습니다.
(+ 생성자의 특징 - 생성자의 이름은 해당 클래스의 이름과 같아야 하며, 생성자의 매개변수의 타입이나 개수가 다른경우 여러개를 사용 가능하다.)
FileOutputStream fout = new FileOutputStream("c:\\temp\\test.out")
c:\temp\test.out 파일에 바이너리 데이터를 저장하는 출력 스트림을 생성하는 코드 입니다.
FileOutputStream 생성자는 c:\temp\test.out 파일을 생성하여 스트림과 연결합니다. (이미 파일이 존재하는 경우, 해당 파일의 내용을 지우고 스트림에 연결합니다.)
파일 쓰기가 이루어지면 c:\temp\test.out 파일은 바이너리 파일이 됩니다.
write() 메소드를 이용하여 배열을 파일에 저장해 보겠습니다.
byte b[] = {7, 51, 3, 4, -1, 24}
for(int i = 0; i < b.length; i++)
fout.write(b[i]);
fout.wite(b);
바이트 스트림으로 파일을 읽기 위해서는 FileInputStream 스트림 클래스를 사용합니다.
FlieInputSteam의 생성자는 다음과 같습니다.
(+ 생성자의 특징 - 생성자의 이름은 해당 클래스의 이름과 같아야 하며, 생성자의 매개변수의 타입이나 개수가 다른경우 여러개를 사용 가능하다.)