본문 바로가기

자바 DB 연동/입출력 스트림

FileOutputStream / FileInputStream

package com.test0613;


import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.InputStreamReader;

// 반드시 암기해야하는 파일 복사 소스(업로드 할 떄 필요)

public class Test4 {

public static void main(String[] args) {

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

try{

String s1,s2;

System.out.print("원본파일명?");

// c:\\source\\Test.java 식으로 입력함

// (폴더가 존재해야 함)

s1=br.readLine();

System.out.print("복사할 파일명 ?");

// c:\\source\\Demo.java 식으로 입력함

// (폴더가 존재해야 함)

s2=br.readLine();

FileInputStream fis=new FileInputStream(s1);

FileOutputStream fos=new FileOutputStream(s2);

byte[] b= new byte[1024]; // 바이트스트림이므로 byte배열을 사용하였다. int 쓰면 에러난다.

//1024는 임의로 잡은 것이다. 일반적으로 512나 1024로 크기를 잡는다

int len;

while((len=fis.read(b, 0, b.length))!=-1){ // b배열의 0번째 부터 배열길이를 구해서 len에 리턴해준다.

fos.write(b, 0, len); // 그 길이만큼 문자가 존재하면 반복해서 출력한다.

}

fos.flush();    // 예로 100바이트씩 자료를 출력하는 메모리가 100바이트가 차지 않아도 출력하도록 해주는 명령

fos.close();

fis.close();

}catch(Exception e){

System.out.println(e.toString());

}

}

}



'자바 DB 연동 > 입출력 스트림' 카테고리의 다른 글

File 클래스 - 폴더만들기, 파일정보구하기  (0) 2013.06.14
flush 메소드  (0) 2013.06.14
FileOutputStream / FileInputStream 업로드의 기초  (1) 2013.06.14
InputStreamReader  (1) 2013.06.14
System.in.read()  (0) 2013.06.14