파일의 내용을 읽어서 출력하는 예제 코드와 비슷하다. 다만 화면으로 출력(System.out.write() = PrintStream.write())하지 않고 FileOutputStream으로 출력하는 부분만 다르다. write()메소드도 모두 OutputStream으로부터 확장된 write메소드를 사용하기 때문에 동일하다.
package ch4;
import java.io.*;
public class FileStreamCopy {
public static void main(String[] args) {
if(args.length != 2){
System.out.println("사용법 : java FileStreamCopy 파일1 파일2");
System.exit(0);
} // if end
FileInputStream fis = null;
FileOutputStream fos = null;
try{
fis = new FileInputStream(args[0]);
fos = new FileOutputStream(args[1]);
byte[] buffer = new byte[512];
int readcount = 0;
while((readcount = fis.read(buffer)) != -1){
fos.write(buffer,0,readcount);
}
System.out.println("파일복사가 완료되었습니다.");
}catch(Exception ex){
System.out.println(ex);
}finally{
try {
fis.close();
} catch (IOException ex) {}
try {
fos.close();
} catch (IOException ex) {}
}
} // main
}
'Java > Input/Output Facilities' 카테고리의 다른 글
[바이트 스트림] 바이트배열의 사용[ByteArrayInputStream / ByteArrayOutputStream] (0) | 2013.02.11 |
---|---|
[바이트 스트림] 기본 데이터형(int,float,double,boolean,short,byte 등) 파일에 저장/읽기 (0) | 2013.02.10 |
[바이트 스트림] 입출력시 OS에대한 고려해야할 사항 – 파일 IO Stream (0) | 2013.02.10 |
IO클래스 사용시 지켜야 할 점. (0) | 2013.02.10 |
바이트 단위 IO [ 1바이트씩 읽고 쓰기 ] (0) | 2013.02.10 |