상세 컨텐츠

본문 제목

[Java]Byte File Copy 예제.

JAVA Language

by mobile 2012. 9. 23. 23:34

본문

반응형
▶ InputStream class
바이트 단위로 데이터를 읽어 들이는 모든 입력 스트림이 상속하는 최상위 클래스이다(Object 클래스 다음으로) 그리고 이 클래스에서 정의하고 있는 대표적인 메소드 두 가지는 다음과 같다.
- public abstract int read() throws IOException
- public void close() throws IOException
read 메소드는 1바이트의 데이터를 읽어서 반환하는 메소드이다.

▶ OutputStream 
모든 출력 스트림이 상속하는 최상위 클래스이다. 
- public abstract void write(int b) throws IOException
- public void close() throws IOException

▶ Byte File Copy

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;


public class ByteFileCopy {

public static void main(String[] args) throws IOException {

InputStream in = new FileInputStream("org.bin");

OutputStream out = new FileOutputStream("cpy.bin");

int copyByte = 0;

int bData = 0;

while(true) {

bData = in.read();

if(bData == -1)

break;

out.write(bData);

copyByte++;

}

in.close();

out.close();

System.out.print("복사된 바이트 크기 " + copyByte);

}

}


▶ Buffer File Copy

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;


public class BufferFileCopy {


public static void main(String[] args) throws IOException {

InputStream in = new FileInputStream("org.bin");

OutputStream out = new FileOutputStream("cpy.bin");

int copyByte = 0;

int readLen;

byte buf[] = new byte[1024];

while(true) {

readLen = in.read(buf);

if(readLen == -1)

break;

out.write(buf, 0, readLen);

copyByte += readLen;

}

in.close();

out.close();

System.out.println("복사된 바이트 크기 " + copyByte);

}

}


반응형

'JAVA Language' 카테고리의 다른 글

[Java]FileReader & FileWriter  (0) 2012.09.28
[Java]필터 스트림  (0) 2012.09.24
[Java] wait, notify, notifyAll에 의한 실행순서 동기화  (0) 2012.09.21
[Java]동기화 기법 예제.  (0) 2012.09.20
[Java]Thread 예제  (0) 2012.09.17

관련글 더보기

댓글 영역