龙书编译输入
Dragon book compiler input
我正在执行 "Dragon book" 前端编译器,它需要使用
的文件输入
java main.Main < fileInput.txt
我的问题是:当我运行args.length时,返回值是0。fileInput.txt不是一个参数吗?我怎样才能在代码上捕捉到它?
不,通过重定向提供标准输入是 shell 的一项功能。检测此使用的唯一方法是在标准 io 文件 handles/descriptors.
上使用 OS 函数
不,您没有向程序传递参数。相反,您正在写入已执行程序的标准输入(fileInput.txt
的内容可以通过 System.in
访问)。
以防万一,示例阅读:
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
编辑:现在发现一个类似的问题,见:Reading in from System.in - Java ;-)
我正在执行 "Dragon book" 前端编译器,它需要使用
的文件输入java main.Main < fileInput.txt
我的问题是:当我运行args.length时,返回值是0。fileInput.txt不是一个参数吗?我怎样才能在代码上捕捉到它?
不,通过重定向提供标准输入是 shell 的一项功能。检测此使用的唯一方法是在标准 io 文件 handles/descriptors.
上使用 OS 函数不,您没有向程序传递参数。相反,您正在写入已执行程序的标准输入(fileInput.txt
的内容可以通过 System.in
访问)。
以防万一,示例阅读:
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()) {
System.out.println(scanner.nextLine());
}
编辑:现在发现一个类似的问题,见:Reading in from System.in - Java ;-)