Java: 删除已经打印的换行符
Java: Delete newline which is already printed
给定 Java 代码:
System.out.println("hello");
System.out.println();
//insert here
System.out.prinln(" world");
有没有办法在不修改代码的其余部分的情况下删除我们在“//insert here”中插入内容的新行,以便输出来自:
Hello
World
进入:
Hello World
我已经在寻找解决方案,例如 print('\b')
或 Thread.sleep(1000)
;但是第一个与我想要的完全相反,而后者则粉碎了一切。
编辑:我知道可以简单地使用 print
istead
没有真正可移植的方法,因为并非每种终端类型都支持向上移动光标。但是,您可以尝试使用 ASCII 控制序列。例如 ESC [2A
将光标向上移动 2 行。不幸的是,在不知道 'Hello' 的长度的情况下,无法将光标定位在打印的 'Hello' 之后 - 有关此行上已打印了多少字符的信息不可用。
你可以使用 System.out.print 代替 println
给定 Java 代码:
System.out.println("hello");
System.out.println();
//insert here
System.out.prinln(" world");
有没有办法在不修改代码的其余部分的情况下删除我们在“//insert here”中插入内容的新行,以便输出来自:
Hello
World
进入:
Hello World
我已经在寻找解决方案,例如 print('\b')
或 Thread.sleep(1000)
;但是第一个与我想要的完全相反,而后者则粉碎了一切。
编辑:我知道可以简单地使用 print
istead
没有真正可移植的方法,因为并非每种终端类型都支持向上移动光标。但是,您可以尝试使用 ASCII 控制序列。例如 ESC [2A
将光标向上移动 2 行。不幸的是,在不知道 'Hello' 的长度的情况下,无法将光标定位在打印的 'Hello' 之后 - 有关此行上已打印了多少字符的信息不可用。
你可以使用 System.out.print 代替 println