gpt4 book ai didi

java - 如何使用 java 应用程序 "reset"或 "clear"System.in?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:46:54 27 4
gpt4 key购买 nike

我正在运行一个大致如下所示的 java 应用程序:

InputStreamReader isReader = new InputStreamReader(System.in);
BufferedReader bufReader = new BufferedReader(isReader);
while (true) {
try {
String inputStr = null;
if ((inputStr=bufReader.readLine()) != null) {
//DO SOMETHING
}
else {
System.out.println("input is null");
}
}
catch (Exception e) {
//DO SOMETHING
}
}

使用此命令 java test < textfilename但在读入所有内容后,应用程序开始继续打印 input is null .当然我可以加break;下面System.out.println("input is null"); , 但有没有一种方法可以清除输入缓冲区并开始从命令行获取输入?

PS:我正在使用的文件示例:

11111111
11111112
11111113
11111114

最佳答案

据我所知这是不可能的。当您使用 <在从文件读取的命令行中,System.in 的内容由 shell 而不是 Java 控制。

readLine()返回 null是 Java 表示您已到达文件末尾的方式,也是您发送 EOF 时得到的结果/在 shell 中键入 Ctrl-D。

关于java - 如何使用 java 应用程序 "reset"或 "clear"System.in?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25797441/

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