소개
이 기사에서는 파일의 내용을 한 줄씩 읽는 다양한 방법에 대해 배우게 될 것입니다. 이 기사에서는 다음과 같은 Java 클래스의 메서드를 사용합니다: java.io.BufferedReader
, java.util.Scanner
, Files.readAllLines()
, 그리고 java.io.RandomAccessFile
.
BufferedReader
를 사용하여 파일 한 줄씩 읽기
java.io.BufferedReader
의 readLine()
메서드를 사용하여 파일을 한 줄씩 읽어 String으로 가져올 수 있습니다. 이 메서드는 파일의 끝에 도달하면 null
을 반환합니다.
다음은 BufferedReader
를 사용하여 파일을 한 줄씩 읽는 예제 프로그램입니다:
package com.journaldev.readfileslinebyline;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileLineByLineUsingBufferedReader {
public static void main(String[] args) {
BufferedReader reader;
try {
reader = new BufferedReader(new FileReader("sample.txt"));
String line = reader.readLine();
while (line != null) {
System.out.println(line);
// 다음 줄 읽기
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
더 많은 학습은 BufferedReader
API 문서 (Java SE 8)와 함께하세요.
Scanner
를 사용하여 파일을 한 줄씩 읽기
파일을 열고 내용을 한 줄씩 읽으려면 Scanner
클래스를 사용할 수 있습니다.
다음은 Scanner
를 사용하여 파일을 한 줄씩 읽는 예제 프로그램입니다.
package com.journaldev.readfileslinebyline;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ReadFileLineByLineUsingScanner {
public static void main(String[] args) {
try {
Scanner scanner = new Scanner(new File("sample.txt"));
while (scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
Scanner
API 문서 (Java SE 8)로 학습을 계속하세요.
Files
를 사용하여 파일을 한 줄씩 읽기
java.nio.file.Files
는 다양한 유용한 메소드를 포함한 유틸리티 클래스입니다. readAllLines()
메소드를 사용하여 모든 파일 라인을 문자열 리스트로 읽어올 수 있습니다.
Files
를 사용하여 파일을 한 줄씩 읽는 예제 프로그램은 다음과 같습니다:
package com.journaldev.readfileslinebyline;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class ReadFileLineByLineUsingFiles {
public static void main(String[] args) {
try {
List<String> allLines = Files.readAllLines(Paths.get("sample.txt"));
for (String line : allLines) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
계속해서 Files
API 문서(Java SE 8)로 학습하세요.
RandomAccessFile
을 사용하여 파일을 한 줄씩 읽기
RandomAccessFile
을 사용하여 파일을 읽기 모드로 열고 readLine
메서드를 사용하여 파일을 한 줄씩 읽을 수 있습니다.
RandomAccessFile
을 사용하여 파일을 한 줄씩 읽는 예제 프로그램은 다음과 같습니다:
package com.journaldev.readfileslinebyline;
import java.io.IOException;
import java.io.RandomAccessFile;
public class ReadFileLineByLineUsingRandomAccessFile {
public static void main(String[] args) {
try {
RandomAccessFile file = new RandomAccessFile("sample.txt", "r");
String str;
while ((str = file.readLine()) != null) {
System.out.println(str);
}
file.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
계속해서 RandomAccessFile
API 문서(Java SE 8)로 학습하세요.
결론
이 글에서 파일의 내용을 한 줄씩 읽는 Java의 다양한 방법에 대해 배웠습니다.
더 많은 Java 튜토리얼로 학습을 계속하세요.
Source:
https://www.digitalocean.com/community/tutorials/java-read-file-line-by-line