- Scanner(Java 1.5) 按行读数据及String、Int类型等按分隔符读数据。
- Files.lines, 返回Stream(Java 8) 流式数据处理,按行读取
- Files.readAllLines, 返回List(Java 8)
- Files.readString, 读取String(Java 11), 文件最大 2G.
- Files.readAllBytes, 读取byte[](Java 7), 文件最大 2G.
- BufferedReader, 经典方式 (Java 1.1 -> forever)
1.Scanner
第一种方式是Scanner,从JDK1.5开始提供的API,特点是可以按行读取、按分割符去读取文件数据,既可以读取String类型,也可以读取Int类型、Long类型等基础数据类型的数据。
@Test
void testReadFile1() throws IOException {
//文件内容:Hello World|Hello Zimug
String fileName = "D:\data\test
ewFile4.txt";
try (Scanner sc = new Scanner(new FileReader(fileName))) {
while (sc.hasNextLine()) { //按行读取字符串
String line = sc.nextLine();
System.out.println(line);
}
}
try (Scanner sc = new Scanner(new FileReader(fileName))) {
sc.useDelimiter("\|