[JAVA] 자바 파일 쓰기에 대해 파헤치기 [FileOutputStream, FileWriter, PrintWriter 차이]
[JAVA] 자바 콘솔 입력에 대해 파헤치기 [InputStream, InputStreamReader, BufferedReader 차이] - 자바 콘솔 입력에 대해 파헤치기 1. InputStream 자바에서 사용자가 입력한 문자열을 얻기 위해서는 아래와 같이 Sy
yermi.tistory.com
- 자바에서 txt 파일 읽는 방법
1. FileInputStream
파일을 읽기 위해서는 FileInputStream 클래스를 이용한다.
읽을 파일은 파일 쓰기에서 만든 out.txt 파일이다.
import java.io.FileInputStream;
import java.io.IOException;
public class Sample {
public static void main(String[] args) throws IOException {
byte[] b = new byte[1024];
FileInputStream input = new FileInputStream("d:/out.txt");
input.read(b);
System.out.println(new String(b));
input.close();
}
}
2. FileReader
FileInputStream은 byte 배열을 이용하기 때문에 데이터 길이를 모를 경우 불편하다.
FileReader와 BufferedReader의 조합을 사용하면 파일을 한 줄 단위로 읽을 수 있다.
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Sample {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader("d:/out.txt"));
while(true) {
String line = br.readLine();
if(line == null) {
break;
}
System.out.println(line); // 더 이상 읽을 라인이 없을 경우 나간다.
}
br.close();
}
}
참고문헌 : 박응용(2023), Do it! 점프 투 자바, 이지스퍼블리싱