动画的Java多行文本删除[关闭]

Posted

技术标签:

【中文标题】动画的Java多行文本删除[关闭]【英文标题】:Java multiline text removal for animation [closed] 【发布时间】:2021-04-20 01:34:57 【问题描述】:

有没有办法用Java清除控制台中打印的多行文本?

我正在尝试打印 2 张由略有不同的文本制成的图片,并在循环中相互替换。因此,我想打印一个多行字符串,然后在打印下一个字符串之前清除屏幕。但是,我不知道如何清除屏幕。

我已经尝试过使用 \r,但这不起作用,因为它是多行。

【问题讨论】:

当然......它被称为 ASCII Art 但它不会覆盖控制台窗口中以前的 Ascii 图像 有一些Java curses-like libraries 可以做你想做的事。我个人没有尝试过。 @DevilsHnd 我知道 ASCII 艺术是什么,但我想做的是覆盖之前打印的内容。 我不相信你能做到这一点,除非你要么每 500 毫秒清除一次屏幕以使其看起来像动画,要么添加足够多的新行以使旧内容向上滚动并被隐藏。跨度> 【参考方案1】:

reddit 上的 u/sellithy 帮助我解决了 this link 对我有用的代码块是

    System.out.print("\033[H\033[2J");  
    System.out.flush();

【讨论】:

以上是关于动画的Java多行文本删除[关闭]的主要内容,如果未能解决你的问题,请参考以下文章