我尝试使用Scanner从标准输入读取整个文件,但是在相当短的输入后它会一直停止。我的代码是:
import java.util.Scanner;
public class TestEOF {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
sc.useDelimiter("\\z");
String whole = sc.next();
System.out.println(whole);
}
}
据说这应该让扫描仪一直读到文件的末尾,但我发现它在大约1000个字符左右后一直停止。我已尝试使用一堆不同的输入文本文件,并且每次都获得类似的结果,即使输入文件没有异常字符。我通过命令
运行它java TestEOF < input.txt