现在,我正在处理一个控制台应用程序,它应该以给定的时间间隔向控制台显示和更新信息。我遇到的问题是,使用回车,我一次只能更新一行文本。如果我使用换行符,则无法再使用回车更新旧行。
我可以在这里做什么?
您可能能够找到适用于您的平台的curses 库变体。
正确的答案是使用 Mark 提到的 curses 库。但是,如果您使用的是类 Unix 系统并且不能被诅咒所困扰,那么快速而肮脏的解决方案是直接打印出 vt100 转义序列:
http://ascii-table.com/ansi-escape-sequences-vt-100.php
我经常这样做,尤其是在没有诅咒绑定的脚本语言中。
这是一个非常丑陋的解决方案,但在紧要关头,您总是可以完全清除控制台,然后重新打印所有内容。在某些情况下,这种策略看起来有点难看;它可能会使事情看起来眨眼。