Java8读文件仅需一行代码

编程

  如果使用JDK8,那么还可以使用流API来读写文件,这样代码更简洁、高效。

  下面的例子中,lines()方法返回字符串流,字符串使用的是UTF-8编码。如下:

import java.io.IOException;

import java.nio.charset.StandardCharsets;

import java.nio.file.Files;

import java.nio.file.Paths;

public class Java8FileReader {

public static void main(String[] args) throws IOException {

// Java8用流的方式读文件,更加高效

Files.lines(Paths.get("D:\jd.txt"), StandardCharsets.UTF_8).forEach(System.out::println);

}

}

上面的例子要注意几点:

  • 1)文件可能很大,可能会超出内存空间,使用前要做评估。
  • 2)要输出日志,记录为什么无法读取文件或者在阅读文件时遇到的任何错误。
  • 3)在把字节转换成字符时,应该指定字符编码。
  • 4)要处理文件不存在的情况。

  还要注意,如果读入的文件的编码是ANSI编码,那么上面的例子在读取文件内容时会报java.nio.charset.MalformedInputException: Input length = 1错误。

以上是 Java8读文件仅需一行代码 的全部内容, 来源链接: utcz.com/z/510791.html

回到顶部