java - 从控制台读取已写入的文本

标签 java console

我觉得问这个问题很愚蠢,但是:如何从控制台读取一个不是输入但已写入控制台的字符串?

例如,如果我将一行打印到控制台,我如何才能在事后读取它?我知道这是不典型的。

最佳答案

除非在某些特殊情况下,否则不能,正如 Brad 在评论中指出的那样。作为一个理由,请考虑当您将一些文本发送到控制台(通过标准输出或标准错误)进行打印时,不能保证该文本实际上会被打印。也许用户已将该输出流重定向到 /dev/null,在这种情况下,文本将永远消失。或者文本可能已滚动到 View 之外。

基本上,不要指望能够访问发送到控制台进行输出的内容。如果您需要它,请在您的程序中保留一份副本。如果您试图获取另一个程序发送到控制台的内容,则需要使用某种不同的安排,例如共享内存、套接字或 fifo 管道。

关于java - 从控制台读取已写入的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8190663/

相关文章:

java - android中sqlite无法创建表

java - 在 Java 中使用本地数字格式化程序进行双值对齐

server - 如何复制并粘贴到 digital ocean 中的控制台?

javascript - 使用浏览器在页面(客户端)上运行自定义 JavaScript 来模拟点击?怎么做?

bash - 如何在 Bash 中输出粗体文本?

c# - 如何在控制台格式化日志输出?(Microsoft.Extensions.Logging)

c 在控制台中绘制直线

java - SQL Server 和 Java 之间的时区代码转换

java - 带扩展名的 ResourceBundle 完全限定名称

java - hibernate 错误: Illegal Attempt to deference collection