Java BufferedReader: 파일을 읽는 방법 Java 예와 함께
파일을 읽는 방법 Java?
Java File에서 읽기 위한 여러 메커니즘을 제공합니다. 이를 위해 제공되는 가장 유용한 패키지는 java.io.Reader입니다. 이 클래스에는 Class가 포함되어 있습니다. Java Bufferjava.io 패키지 아래의 edReader.BufferedReader
Buffer에드리더 Java?
BufferedReader 하는 Java 문자, 배열 또는 줄을 매끄럽게 읽는 문자를 버퍼링하여 입력 스트림(파일과 같은)에서 텍스트를 읽는 클래스입니다. 일반적으로 Reader에서 만든 각 읽기 요청은 기본 문자 또는 바이트 스트림에서 해당 읽기 요청이 만들어지도록 합니다.
그러므로 포장하는 것이 좋습니다. Buffer에드리더 Java read() 작업이 비용이 많이 들 수 있는 모든 Reader 주변(예: Java FileReaders 및 InputStreamReaders) 일반적인 사용에는 파일 경로를 전달하는 것이 포함됩니다. Buffer에드리더 Java 다음과 같이 :
objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));
//Assuming you have a text file in D drive
이는 기본적으로 objReader에 파일을 로드합니다. 이제 파일 내용을 반복하여 인쇄해야 합니다.
The while 루프 아래 코드에서는 파일 끝에 도달할 때까지 파일을 읽습니다.
while ((strCurrentLine = objReader.readLine()) != null) {
System.out.println(strCurrentLine);
}
strCurrentLine은 현재 줄을 읽고 Java readLine 함수 objReader.readLine()은 문자열을 반환합니다. 따라서 루프는 null이 아닐 때까지 반복됩니다.
BufferedReader 예
아래 코드는 Java Buffer전체 구현을 보여주는 edReader 예:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileExample {
public static void main(String[] args) {
BufferedReader objReader = null;
try {
String strCurrentLine;
objReader = new BufferedReader(new FileReader("D:\\DukesDiary.txt"));
while ((strCurrentLine = objReader.readLine()) != null) {
System.out.println(strCurrentLine);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (objReader != null)
objReader.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
참고 :
위 코드에는 특히 코드의 finally 블록에서 매우 중요한 처리 기능이 있습니다.
이 코드는 메모리 관리 효율적으로 수행되고 메모리를 해제하는 objReader.close() 메서드가 호출됩니다.
BufferedReader JDK7 예
아래는 그 예이다. Java 다음을 사용하여 파일 읽기 BufferedReader 클래스
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileExample_jdk7 {
private static final String FILENAME = "D:\\DukesDiary.txt";
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {
String strCurrentLine;
while ((strCurrentLine = br.readLine()) != null) {
System.out.println(strCurrentLine);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
