平时在终端中安装软件,有些软件能在某个位置中实时更新打印进度,在golang的终端输出中,怎样实现?
比如我要在终端中打印一个进度:
fmt.Print("进度:")
fmt.Printf("%d%%",25)
fmt.Printf("%d%%",50)
fmt.Printf("%d%%",75)
fmt.Printf("%d%%",100)
这么使用的话效果是:
进度:25%50%75%100%
我想要的效果是在进度:
后面实时更新打印数据,golang
中怎样实现?
平时在终端中安装软件,有些软件能在某个位置中实时更新打印进度,在golang的终端输出中,怎样实现?
比如我要在终端中打印一个进度:
fmt.Print("进度:")
fmt.Printf("%d%%",25)
fmt.Printf("%d%%",50)
fmt.Printf("%d%%",75)
fmt.Printf("%d%%",100)
这么使用的话效果是:
进度:25%50%75%100%
我想要的效果是在进度:
后面实时更新打印数据,golang
中怎样实现?
一个任务的进度是由你自己来决定的。你可以 每间隔1秒打印一次进度。而这个进度你自己通过你的业务逻辑来算的。 比如
go func(){
for{
fmt.Printf("进度%d",sub/total)
time.sleep(1秒)
}
}()
//执行任务...执行完毕自然就退出了。
2 回答1.4k 阅读
2 回答1.3k 阅读
2 回答1.2k 阅读
2 回答1.3k 阅读
3 回答833 阅读
2 回答1k 阅读
2 回答967 阅读
这个是通过
printf("进度:%d%%\r", i)
实现的。试试看