我正在编写一个简单的 Java 项目,名为 Robot。机器人可以通过以下方式从命令提示符接受配置文件(如果没有文件,机器人将使用默认配置):
java Robot < config.txt
有谁知道我如何从 java 中的命令提示符读取重定向输入?
我正在编写一个简单的 Java 项目,名为 Robot。机器人可以通过以下方式从命令提示符接受配置文件(如果没有文件,机器人将使用默认配置):
java Robot < config.txt
有谁知道我如何从 java 中的命令提示符读取重定向输入?
您可以System.in
作为输入流访问,它将包含所有重定向的输入。
具体来说,从重定向的标准输入读取与从常规标准输入读取相同。
例如,假设您想从重定向的流中读取整数列表。
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Foo {
public static void main(String args[])
throws IOException
{
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
int sum = 0;
String line;
while ((line = r.readLine()) != null) {
sum += Integer.parseInt(line);
}
System.out.println(sum);
}
}
然后当你运行它时,你会得到
$ (echo 1; echo 2; echo 65) > foo.txt
$ java Foo < foo.txt
68