在 Scala 或 Java 中,如何打印一行到控制台替换其之前的内容而不是追加?

发布于 2024-09-17 10:07:18 字数 98 浏览 8 评论 0原文

Scala 应用程序执行一些数据处理。最好以百分比显示处理进度,覆盖更改时的先前值,而不是将新值附加到已显示的值。如何达到这样的效果呢?我在 Linux 上使用 Scala 2.8。

A Scala application does some data processing. It would be nice to show processing progress in percents overwriting previous value on change rather than appending a new value to what's already displayed. How to acheive this effect? I use Scala 2.8 on Linux.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

幸福丶如此 2024-09-24 10:07:18

最简单的选择是使用不带换行符的回车符 "\r" 或退格字符 "\u0008"。如果您退格,则需要跟踪已发出的字符数量,以便可以备份足够的字符(并清除多余的字符)。如果回车,则需要重写整行(并写入空格以删除多余的内容)。

Your easiest options are to use the carriage return without linefeed "\r" or the backspace character "\u0008". If you backspace, you need to keep track of how many characters you've emitted so you can back up enough (and blank out any excess). If you carriage return, you need to rewrite the entire line (and write spaces to blank out any excess).

情愿 2024-09-24 10:07:18

如果您使用 C/C++ 进行编程,答案无疑是“ncurses”。

您可能会对 Java 中的curses 实现感兴趣:

Java Curses

If you were programming in C/C++, the answer would unequivocably be "ncurses".

There is a curses implemention in Java you might be interested in:

Java Curses

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文