FireDrago
[java] FileInputStream /OutputStream 사용 본문
import java.io.*;
public class IoTest2 {
public void main (String [] args) throws IOException {
FileInputStream fis = new FileInputStream("c:\\tmp\\example.txt");
FileOutputStream fos = new FileOutputStream("result.txt");
int data;
while ((data=fis.read()) != -1 ) {
fos.write(data);
}
}
}
java에서 입력을 받아올때, 출력을 할때는 stream을 사용한다.
stream 에는 1byte 기반의 stream과 문자기반의 reader,writer가 있다.
예제에서는 FileInputStream과 FileOutputStream의 사용을 알아보자
FileInputStream fis = new FileInputStream("c:\\tmp\\example.txt");
먼저 FileinputStream의 객체를 생성한다. 매개변수로 읽어올 파일의 경로를 적어준다.
FileOutputStream fos = new FileOutputStream("result.txt");
FileOutputStream 객체도 생성한다. 위와 달리 매개변수로 파일명만 적었는데 이럴경우 Root 폴더에 result.txt 파일이 생성된다.
root 폴더는 워크스페이스의 패키지 폴더이다.
int data;
//.read( )는 읽어올 내용이 없으면 -1 , 있으면 데이터 값을 리턴한다
while ((data=fis.read()) != -1 ) {
fos.write(data);
//.write( )는 데이터 값을 result.txt에 적는 메서드
}
data 변수는 반드시 while 조건문에서 초기화 해야한다.
data = fis.read( )를 변수선언과 동시에 초기화 하면 , 조건문에서 무한 반복문이 실행된다.
'프로그래밍 > Java' 카테고리의 다른 글
| [Assertj] equals, getter 없이 테스트코드 작성하기 (usingRecursiveComparison) (0) | 2024.11.18 |
|---|---|
| [JAVA] 입력받고 유효성 검사하기 (0) | 2023.07.15 |
| [java] 회원정보 입력 , 출력 (ArrayList 활용) (0) | 2023.05.08 |
| [java] LocalDate/LocalTime 메서드 정리 (0) | 2023.05.04 |
| [java] String 클래스의 유용한 메서드 (0) | 2023.05.03 |
