我正在尝试在Rust中创建一个打印到stdout的状态指示器.在其他语言中,我使用了一个函数来清除当前的stdout行,同时保持其他行不变.我似乎无法找到Rust等效物.有吗?这是我正在寻找的一个小例子
for i in 0..1000 {
stdio::print(format!("{}", i).as_slice));
stdio::clear();
}
Run Code Online (Sandbox Code Playgroud)
在ANSI终端上(几乎所有除Windows上的命令提示符之外的所有内容)\r都会将光标返回到当前行的开头,允许您在其上面写入其他内容(新内容或空格以删除您已编写的内容).
print!("\r")
Run Code Online (Sandbox Code Playgroud)
标准库中没有任何内容可以以平台中立的方式执行此操作.
小智 5
使用 ASCII 代码作为退格键是一种选择,例如:
print!("12345");
print!("{}", (8u8 as char));
Run Code Online (Sandbox Code Playgroud)
由于打印退格字符(ascii 代码 8),删除 5 后,最终将输出“1234”。奇怪的是,Rust 不将 \b 识别为有效的字符转义。
| 归档时间: |
|
| 查看次数: |
2941 次 |
| 最近记录: |