如何在 Java 中逐行读取文件
介绍
在本文中,您将了解使用 Java 逐行读取文件内容的不同方法。本文使用以下 Java 类中的方法:java.io.BufferedReader
、、和。java.util.Scanner
Files.readAllLines()
java.io.RandomAccessFile
使用以下方法逐行读取文件BufferedReader
您可以使用readLine()
from 方法java.io.BufferedReader
逐行读取文件并将其保存为字符串。null
当到达文件末尾时,此方法将返回。
下面是逐行读取文件的示例程序BufferedReader
:
ReadFileLineByLineUsingBufferedReader.java
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);
// read next line
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
BufferedReader
通过API Doc(Java SE 8)继续学习。
使用以下方法逐行读取文件Scanner
您可以使用该类Scanner
打开一个文件,然后逐行读取其内容。
下面是逐行读取文件的示例程序Scanner
:
使用Scanner.java读取文件行
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 Doc(Java SE 8)继续学习。
使用以下方法逐行读取文件Files
java.nio.file.Files
是一个包含各种有用方法的实用程序类。该readAllLines()
方法可用于将所有文件行读入字符串列表。
下面是逐行读取文件的示例程序Files
:
ReadFileLineByLineUsingFiles.java
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 Doc(Java SE 8)继续学习。
使用以下方法逐行读取文件RandomAccessFile
您可以使用以读取模式RandomAccessFile
打开文件,然后使用其方法逐行读取文件。readLine
下面是逐行读取文件的示例程序RandomAccessFile
:
使用RandomAccessFile.java逐行读取文件
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 Doc(Java SE 8)继续学习。
结论
在本文中,您了解了使用 Java 逐行读取文件内容的不同方法。
通过更多Java 教程继续学习。