Daily coding
Java Basic : day 7 - File Read 파일 읽기 본문
File Read
- file 의 실질적 목적 : 데이터 읽기와 쓰기 (저장)
- 외부에서 텍스트 파일에 기입함
Read
File file = new File("d:\\tmp\\newfile.txt");
FileReader fr = new FileReader(file); -> 텍스트 파일을 읽어오는 클래스
// 예외처리 필요함 --> throws / try-catch
방법 1 : 한 문자씩 읽어들인다.
int c = fr.read();
while( c!= -1) { // -1은 파일 끝부분임
System.out.println((char)c);
c = fr.read();
// 윈도우에서 만든 파일은 MS949 라 UTF8은 깨짐
// 내부에서 작성한 파일은 안깨진다.
}
방법 2 : 전체를 한글자씩 읽기
int c;
while( (c=fr.read())!= -1) { // -1은 파일 끝부분임
System.out.println((char)c);
// 윈도우에서 만든 파일은 MS949 라 UTF8은 깨짐
// 내부에서 작성한(fileWrite) 파일은 안 깨진다.
}
위의 코드는 사용하기 껄끄러움
문자열을 잘라야하는 경우에 시작점을 알기 어렵다.
방법 3 : 한 문장씩 읽기 (BufferedReader)
Buffer = 저장공간
// fr = fileReader 의 클래스 변수
BufferedReader br = new BufferedReader(fr); // <-- FileReader을 한문장씩 읽어줌
String str; // 한 문장 씩 읽어들이기 위한 변수
str = br.readLine();
while( str != null) {
System.out.println(str);
str = br.readLine(); // 다음 문장을 읽어들인다.
}
또는
while( (str = br.readLine()) != null) {
System.out.println(str);
}
// BufferedReader는 사용이 끝나면 close()해줘야 한다.
br.close();
}
}
'Language > Java_basic' 카테고리의 다른 글
Java Basic : day 7 - Example 01 : 메소드로 성적 입출력 프로그램 작성하기 ( CRUD + FileWrite ) (0) | 2019.11.26 |
---|---|
Java Basic : day 7 - File write 파일 쓰기 (0) | 2019.11.26 |
Java Basic : day 7 - File : 파일 입출력 (0) | 2019.11.26 |
Java Basic : day 7 - Exception 예외처리3 (0) | 2019.11.26 |
Java Basic : day 7 - Exception 예외처리2 (0) | 2019.11.26 |