前言
恨不過是七情六欲的一種,再強大的恨也沒法獨占整顆心,總有其它情感隱藏在心底深處,說不定在什么時候就會掀起滔天巨浪。——《死人經》
圖中是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
\;\\\;\\\;