개발/java
파일 입출력으로 파일 복사하기
나태쿤
2021. 3. 18. 10:19
728x90
입력과 출력은 자바 프로그램을 기준으로 외부에서 내부로 읽어들이는거라면 입력,
자바 프로그램에서 외부로 보내는것은 출력이다
그때 사용하는 객체는
FileInputStream , FileOutputStream이다.
위의 예제를보면 입력스트림에서 a.txt라는걸을 입력을 받았다
b.txt로 출력을 하는데(즉 새로운 b.txt 생성)
사실 입력을 받을때 1바이트씩 정수로 읽어들인다
이때 포인터라는 개념으로 1바이트읽고 다음으로 가서 또 1바이트씩 읽고
계속 반복한다 그래서 while이 있는것이다
while쪽에보면 fi.read() 메소드가 있는데 다음 포인터가 존재하지않으면 -1을 반환한다.
즉, 1바이트씩 모두 다 읽었을때 -1을 반환한다.
그리고 하나씩읽을때마다 write()메소드로 하나씩 출력해낸다
a.txt만 하나준비해두고 아무 내용을 적어서 저장후에
실행해보면 b.txt가 생성되고 똑같은것을 볼수있다.
(파일의 경로는 src와 동등한 위치의 경로이다)
728x90