前言
恨不过是七情六欲的一种,再强大的恨也没法独占整颗心,总有其它情感隐藏在心底深处,说不定在什么时候就会掀起滔天巨浪。——《死人经》
图中是Starship扔掉下面的燃料罐,再扔掉头顶的翅膀后,再翻转过来着陆火星的模块!
\;\\\;\\\;
目录
- 前言
- 一直在单行显示
- 输入
- 文件读写
一直在单行显示
关键在于回车符\r,返回行头!
#python
print('\r','\tsearching... %d' % (j),end='',flush=True)
Rust中是这样
//rust
use std::thread;
use std::time::Duration;
use std::io;
use std::io::Write;fn main(){let mut j=0;while j<100{j+=1;print!("\r\tsearching... {}",j);let _ = io::stdout().flush(); //不刷新不显示print!()的内容thread::sleep(Duration::from_millis(30));}
}
\;\\\;\\\;
输入
刷新的函数有返回值,必须接收一下。下划线underscore是通配符,放在match里可以匹配任意内容。
use std::io::Write;
use std::io;fn main(){print!("input> "); //此函数不输出\nlet _ = io::stdout().flush(); //不刷新不显示print!()的内容let mut buffer = String::new();io::stdin().read_line(&mut buffer).expect("error occur!");println!("output> {}",buffer);
}
\;\\\;\\\;
文件读写
use std::fs;
use std::fs::File;
use std::io;
use std::io::Write;
use std::io::Read;
use std::io::prelude::*;
use std::thread;
use std::time::Duration;fn main() -> io::Result<()>{ //创建空目录fs::create_dir("./hhhh")?;fs::create_dir_all("./hhhh/try")?;thread::sleep(Duration::from_secs(2));//删除空目录fs::remove_dir_all("./hhhh/try")?;fs::remove_dir("./hhhh")?;//创建文件let mut f = File::create("a.txt").expect("create failed!");//写入ff.write_all("[TEST][%s]_>\n".as_bytes()).expect("write failed!");//打开文件f1let mut f1 = File::open("try2_stdin.rs").unwrap();//读取f1内容写入flet mut buffer = String::new();f1.read_to_string(&mut buffer)?; //先读到buffer中println!("file content : \n{:?}", buffer);//写入ff.write_all(buffer.as_bytes()).expect("write failed!");Ok(()) //咩事啊
}
a.txt
\;\\\;\\\;