-
package Example03;
import java.io.FileInputStream;
public class MainExample03;{
InputStream inputStream = null;
OutputStream outputStream = null;
}
try {
inputStream = new FileInputStream("파일 경로");
outputStream = new FileOutputStream("복사 파일 경로");
//파일을 읽어와서 내보내는 과정이 복사의 과정이기 때문에 inputStream과 outputStream의 변수를 선언한다. //
byte[] arr = new byte[5];
//배열로 5개의 바이트씩 끊어서 출력될 것이다. //
while(true) {
int len = inputStream.read(arr);
if(len = -1) break;
outputStream.write(arr, 0 , len);
}
// while 반복문으로 inputStream을 read()하는 메서드를 사용하고 더 이상 반복이 안되는 -1 값이 되면 break를 사용해서 outputStream으로 파일 내보내기 기능을 수행한다.//
} catch (Exception e){
e.printStackTrace();
}finally{
if (inputStream != null) {
try {inputStream.close();
// 초기에 선언한 변수가 아닌 경우 종료를 위해서 close() 메서드를 사용한다.//
} catch (Exception e) {
e.printStackTrace();
}
}
if (outputStream != null){
try{
if(outputStream.close();
}catch (IOException e) {
e.printStackTrace();
}
}
}
// inputStream과 outPutStream 모두 close()함수를 try문에 넣고 마찬가지로 예외가 또 발생할 수 있기에 catch문을 작성한다. //
'자바 > 자바 키포인트' 카테고리의 다른 글
[자바] 네트워킹과 클라이언트와 서버의 socket&serverSocket의 정의와 예시문 정리하기 (0) 2022.12.18 [자바] Reader&Writer의 개념과 BufferedReader, BufferedWriter를 사용하여 예문 만들기 연습 (0) 2022.12.18 [자바] FileOutputStream을 write()메서드와 배열을 사용해서 출력한 예시 만들어보기 (0) 2022.12.17 [자바] FileInputStream을 read()메서드와 배열을 사용해서 출력한 예시 만들어보기 (0) 2022.12.17 [자바] 자바의 접근성 (0) 2022.12.03 댓글