使用扫描仪读取文件输入

Scanner scanner = null;
try {
    scanner = new Scanner(new File("Names.txt"));
    while (scanner.hasNext()) {
        System.out.println(scanner.nextLine());
    }
} catch (Exception e) {
    System.err.println("Exception occurred!");
} finally {
    if (scanner != null)
        scanner.close();
}

这里通过传递包含文本文件名称的 File 对象作为输入来创建 Scanner 对象。此文本文件将由 File 对象打开,并由扫描仪对象在以下行中读取。scanner.hasNext() 将检查文本文件中是否有下一行数据。将其与 while 循环相结合,你可以遍历 Names.txt 文件中的每一行数据。要检索数据本身,我们可以使用 nextLine()nextInt()nextBoolean() 等方法。在上面的例子中,使用了 scanner.nextLine()nextLine() 是指文本文件中的以下行,并将其与 scanner 对象组合,允许你打印该行的内容。要关闭扫描仪对象,你可以使用 .close()

使用 try with resources(从 Java 7 开始),上面提到的代码可以优雅地编写如下。

try (Scanner scanner = new Scanner(new File("Names.txt"))) {
    while (scanner.hasNext()) {
        System.out.println(scanner.nextLine());
    }
} catch (Exception e) {
    System.err.println("Exception occurred!");
}