Java:如何修改控制台输出?
我需要写一个简单的基于终端的程序Java:如何修改控制台输出?,java,command-line,console,Java,Command Line,Console,我需要写一个简单的基于终端的程序 使用BufferedReader中包装的FileReader从文件中读取一些文本 将此文本打印到控制台,用户应该能够修改它 输入+S后,程序应读取修改后的文本并将其保存回原始文件 总之,我们的想法是为没有GUI的类Unix环境编写一个文本编辑器 但是,我对步骤2和步骤3有问题 System.out打印的所有文本都是不可变的。我怎样才能改变这种行为 我如何为Enter+S实现一个键侦听器。我可以用GUI轻松地实现它,但是在基于控制台的程序中,我应该向其中添加一个侦
谢谢大家! 这类事情是在Unix中使用curses库完成的。您需要的是类似的东西。它是一个Java库,与旧的termcap/termio/curses/ncurses库在24 x 80终端时代所做的一样
Charva(和curses等)通过向终端或终端仿真器发送控制代码和/或转义序列来移动光标、写入和擦除字符等。在现代系统中,它们依赖于提供ANSI或VT100终端仿真的控制台。。。或者类似的东西。你需要类似的东西。尝试查找一些免费的java诅咒库
System.out打印的所有文本都是不可变的。我怎样才能改变这种行为?
你这是什么意思?他的意思是,通常在打印出来后,你不能回去更改它。@cularis我的意思是,一旦“Hello World”被打印出来,你就不能将其退格为“Hello”。人们总是出于某种原因问这个问题:)不,它实际上是一个面向没有GUI的嵌入式系统的真实程序。这是一件有趣的事情……并且可能满足用户825089的目的。谢谢斯蒂芬,我也觉得它很有用。谢谢你,那确实很有帮助。一定会查出来的。谢谢,我甚至不知道这些诅咒是什么。首先,我们必须了解他们的基本情况。