使用 java 写入控制台窗口中的同一位置
我想将一个字符写入控制台窗口中的同一位置。
我想写的字符是 /
-
\
_
。这将为我提供一个小微调器,我可以显示该微调器以显示进度或加载。
那么如何将这些字符写入同一位置呢?否则,你最终会得到这样的结果 /-\_/-\_/-\
I would like to write a character to the same location in a console window.
The characters I would like to write are /
-
\
_
. This will get me a little spinner I can display to show progress or loading.
How can you write the chars to the same location though? Otherwise, you will wind up with something like this /-\_/-\_/-\
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于 Java 6,您可以使用
Console
执行如下操作:\u0008
是特殊的退格字符。打印时会删除该行的最后一个字符。通过开始打印|
,然后在所有其他字符之前添加\u0008
,您将获得微调器行为。请注意,这可能无法 100% 与所有控制台兼容(并且
System.console()
可以返回null
)。另请注意,您不一定必须使用控制台类,因为将此序列打印到标准输出通常也同样有效。
With Java 6 you can use the
Console
to do something like this:\u0008
is the special backspace character. Printing that erases the last character on the line. By starting to print a|
and then prepending the\u0008
before all other characters you get the spinner behavior.Note that this might not be 100% compatible with all consoles (and that
System.console()
can returnnull
).Also note that you don't necessarily have to use the console class, as printing this sequence to standard output commonly works just as well.
我认为 Java 本身不允许这样做。您需要使用一些外部库 - 也许 JCurses 可以帮助您。
I don't think Java natively allows for that. You need to use some external library - maybe JCurses can help you.