如何在 Java 中读取文件
原文:https://www.studytonight.com/java-examples/how-to-read-a-file-in-java
在这篇文章中,我们将学习使用 Java 输入/输出方法读取文件数据。Java 提供了一个Files
类,用于 Java 中的文件处理操作。
Files
类提供了一种方法lines()
,用于读取具有指定字符集的文件数据。默认情况下,字符集是 UTF 8,方法返回一个字符串流,因此我们也可以执行流操作。
这里,我们有两个例子来理解 Java 中的文件读取过程。
我们有一个 abc.txt 文本文件,将用于阅读目的。文件内容如下。
//文件:abc.txt
This is a text file
This is another line of the file
举例时间:
让我们阅读文件的所有行,即文件的所有数据。这里,我们使用File
类和返回字符串流的lines()
方法。
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class Main {
public static void main(String[] args) throws IOException{
Path path = Paths.get("abc.txt");
Stream<String> str = Files.lines(path, StandardCharsets.UTF_8);
str.forEach(System.out::println);
}
}
这是一个文本文件 这是文件的另一行
另一个例子的时间:
让我们举另一个例子来读取文件的所有行。这里,我们使用一个File
类的readAllLines()
方法,它返回一个字符串列表。因为我们希望我们的数据在字符串中,所以我们使用join()
方法将列表转换成字符串。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
public class Main {
public static void main(String[] args) throws IOException{
Path path = Paths.get("abc.txt");
List<String> str = Files.readAllLines(path);
String data = String.join("\n", str);
System.out.println(data);
}
}
这是一个文本文件 这是文件的另一行