有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java输入重定向到键盘输入

我有一个使用输入重定向的程序,在某个时候我想开始从键盘输入。我将如何重新重定向输入

我按如下方式运行程序

java SomeClass < data.txt

代码看起来像这样

java.util.Scanner  = new java.util.Scanner(System.in);
//Process the data from data.txt
//Here I want to be able to receive input from the keyboard, but input still only looks for input from data.txt

是否有某种方法可以使用上述方法再次从键盘接收输入,或者,还有哪些其他选项可用于从两个不同来源接收输入

另外,我正在使用Windows


共 (2) 个答案

  1. # 1 楼答案

    在Unix(包括OS X)上,您应该能够使用cat命令将来自两个或多个源的输入按顺序组合到一个流中。然后,您可以将其导入程序:

    cat data.txt - | java SomeClass
    

    bare-参数表示标准输入,它在交互式shell会话中连接到键盘

  2. # 2 楼答案

    有很多输入,需要时随时使用,怎么样

    Scanner keyboardScanner = new Scanner(System.in);
    Scanner fileScanner = new Scanner("data.txt");
        //Process the data from data.txt
        fileScanner.nextLine();
        //Here I want to be able to receive input from the keyboard, but input still only looks for input 
        keyboardScanner.nextLine();