Java 8中读取文件内容 Files.lines()方法使用示例
作者:今夜有点儿凉
这篇文章主要介绍了Java 8中读取文件内容Files.lines()方法如何使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
Files.lines() 方法
是 Java 8 中在 java.nio.file.Files 类中提供的一个用于逐行读取文本文件的方法。它返回一个流(Stream<String>),其中每个元素都是文件的一行内容。
Files.lines() 方法有两个重载的方法:
1. Stream<String> lines(Path path, Charset charset):
- path:要读取的文件路径,可以使用 Paths.get(String) 方法创建一个 Path 对象。
- charset:可选参数,指定文件的字符编码。如果不提供字符编码,则默认使用平台的默认字符编码。
2. Stream<String> lines(Path path):
- path:要读取的文件路径,可以使用 Paths.get(String) 方法创建一个 Path 对象。
- 此方法使用平台的默认字符编码对文件进行解码。
示例
以下是使用 Files.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 FileLinesExample { public static void main(String[] args) { String filePath = "path/to/file.txt"; // 使用指定的字符编码读取文件的每一行 try (Stream<String> lines = Files.lines(Paths.get(filePath), StandardCharsets.UTF_8)) { lines.forEach(System.out::println); } catch (IOException e) { e.printStackTrace(); } // 使用默认字符编码读取文件的每一行 try (Stream<String> lines = Files.lines(Paths.get(filePath))) { lines.forEach(System.out::println); } catch (IOException e) { e.printStackTrace(); } } }
以上示例展示了如何使用 Files.lines() 方法逐行读取文件的内容,分别使用指定的字符编码和默认的字符编码。在处理完流后,我们使用了 try-with-resources 来确保流被正确关闭,并捕获了可能的 IOException。
总结一下,Java 8中的Files.lines()方法是一个方便且高效的方法,用于以流的形式读取文件中的所有行。它能够自动处理文件的关闭操作,并且可以指定文件的字符编码。
更多关于Java 8读取文件Files.lines() 方法的资料请关注脚本之家其它相关文章!