当程序等待时,我想在控制台中创建动画。有很多简单的方法可以做到这一点,通常,我们只是在某个循环的迭代中绘制符号。让我们的代码是:
func Spinner(delay time.Duration) {
for !StopSpinner{
for _, r := range `-\|/` {
fmt.Printf("\r%c", r)
time.Sleep(delay)
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题是 - 如何在控制台屏幕中不需要动画时删除动画。我尝试了转义序列,如 fmt.Print("\b") 或 fmt.Printf("\r%s", "") 但没有结果。我无法从屏幕上删除最后一个符号,它与下一个文本连接。如何擦除已打印到控制台的字符?