rust 读取二进制文件并打印

use std::fs::File;
use std::env;
use std::io::prelude::*;
fn main() -> std::io::Result<()> {
	let mut param=env::args();
	if param.len() != 2{
		Err(std::io::Error::new(std::io::ErrorKind::Other,"usage:bintool inputfile"))
	}
	else{
		let _=param.next();
		let inputfile=param.next();
		let mut _inputfile = File::open(inputfile.unwrap())?;
		//let mut _outputfile= File::create(outputfile.unwrap())?;
		let mut buffer:[u8;16]=[0;16];
		while let std::io::Result::Ok(len) = _inputfile.read(&mut buffer){
			//println!("{}",len);
			if len == 0 {
				break;
			}
			else{
				for i in 0..len{
					//_outputfile.write_fmt(format_args!("{:#02x} ",buffer[i]));
					print!("{:02x} ",buffer[i]);
				}println!("\r\n");
			}
		}
		Ok(())
	}
}

 

你可能感兴趣的:(rust 读取二进制文件并打印)