动画的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多行文本删除[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Bash (sed?) 删除包含特定文本 (regex) 的多行 /* ... */ 样式注释

2018.12.15 2d形变,动画,表格,多行文本垂直居中

如何在多行上获取edittext文本[关闭]

如何删除或替换两个模式之间的多行文本

多行的动画文字下划线(从左到右绘制动画)

Linux下采用VI编辑器删除复制或移动多行文本内容