gpt4 book ai didi

java - Java 中的命令行管道输入

转载 作者:搜寻专家 更新时间:2023-10-30 21:15:59 26 4
gpt4 key购买 nike

这是一段简单的代码:

import java.io.*;
public class Read {
public static void main(String[] args) {
BufferedReader f = new BufferedReader(new InputStreamReader(System.in));
while(true)
{
String x = null;
try{
x = f.readLine();
}
catch (IOException e) {e.printStackTrace();}
System.out.println(x);
}
}
}

我将其执行为:java Read < input.txt

一旦 input.txt 完全通过管道输送到程序中,x 就会不断得到无限的空值。为什么呢?在将文件输入代码完成后,有没有一种方法可以使标准输入(命令行)处于 Activity 状态?我试过关闭流并重新打开,它不起作用。重置等也。

最佳答案

通过执行 "java Read < input.txt"你已经告诉操作系统对于这个过程,管道文件标准。你不能从应用程序内部切换回命令行。

如果你想这样做,然后将 input.txt 作为文件名参数传递给应用程序,从应用程序内部自己打开/读取/关闭文件,然后从标准输入读取以从命令行获取内容。

关于java - Java 中的命令行管道输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1431551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com