8bit stream과 16bit stream을 결합
1. File 생성
File file = new File("경로");
2. FileInputStream 생성
FileInputStream fis = new FileInputStream(file);
3. InputStreamReader 생성
InputStreamReader isr = new InputStreamReader(fis);
4. BufferedReader 생성
BufferedReader br = new BufferedReader(isr);
///////////////////////// 한 줄에 다 쓰기 //////////////////////////////
BufferedReader br = new BufferedReader( new InputStreamReader( new FileInputStream (file)));
//////////////////////////////////////////////////////////////////////
5. 스트림에 연결될 파일의 내용이 있다면 읽어들인다.
String str = "";
while( (str = br.readLine()) != null ){
str // 읽어들인 한 줄을 사용.(\n은 포함되지 않는다.)
}
6. 스트림의 연결을 끊는다.
br.close();
1. 파일 생성
File file = new File("경로");
2. 파일과 연결하기 위한 stream생성
FileReader fr = new FileReader( file );
3. 줄 단위로 읽기 위한 Stream 생성
BufferedReader br = new BufferedReader( fr );
///////////////////////// 한 줄에 다 쓰기 //////////////////////////////
BufferedReader br = new BufferedReader( new FileReader (file));
//////////////////////////////////////////////////////////////////////
4. 스트림에 연결된 파일의 내용을 끝까지 읽어들인다.
String str = "";
while( (str = br.readLine()) != null ){
str //줄 단위로 읽어들인 한 줄을 사용.
}
5. 스트림의 연결을 끊는다.
br.close();
개발자가 연결객체를 사용하면 연결을 끊지 않았을 때, 메모리 누수(memory leak)이 발생.
누수를 막기 위해 개발자는 반드시 끊는 코드( close() 를 작성해야 한다. )
개발자가 close() 하지 않더라도 JVM이 알아서 close() 해준다.
* 모든 JDK버전에서 사용
BufferedReader br = null;
try{
br = new BufferedReader(
new InputStreamReader( new FileInputStream (file)));
스트림을 사용하는 코드
}finally{
if( br != null ){br.close()}//연결을 반드시 끊기 위해서
}
* JDK1.7이상 버전에서 사용
try(
BufferedReader br = new BufferedReader(
new InputStreamReader( new FileInputStream (file)))({
스트림을 사용하는 코드
}catch( 예외처리클래스 ){
예외 발생시 처리할 코드
}
JVM안에서 발생한 데이터를 File로 출력.
FileOutputStream, FileWriter가 제공. => 스트림을 생성하면 목적지에 파일이 존재하면 덮어쓴고, 파일이 존재하지 않으면 파일을 생성한다.
디렉토리는 생성할 수 없다.
1. 파일 생성
File file = new File("경로/파일명");
2. 스트림을 생성
FileOutputStream fos = new FileOutputStream( file );
3. 스트림에 파일로 저장할 내용을 쓴다.
int i = 65;
fos.write(i);
4. 스트림에 쓰여진 내용을 목적지로 분출한다.
fos.flush();
5. 연결끊기
fos.close();
1. 파일 생성
File file = new File("경로/파일명");
2. 스트림을 생성
FileWriter fw = new FileWriter( file );
3. 스트림에 파일로 저장할 내용을 쓴다.
int i = 65;
fos.write(i);
4. 스트림에 쓰여진 내용을 목적지로 분출한다.
fos.flush();
5. 연결끊기
fos.close();