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

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

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

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

【问题讨论】:

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

标签: java animation command-line-interface multilinestring


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多