kkbt/
lib.rs

1//! # MiniLib  
2//! 小型工具库,恐咖兵糖常用工具的集合  
3//! Common Tools for 恐咖兵糖  
4//! Gitee [https://gitee.com/kkbt/rust-kkbt](https://gitee.com/kkbt/rust-kkbt)  
5//! Author: 恐咖兵糖 [主页](https://www.ftls.xyz) Mail: snowandocean@foxmail.com   
6
7mod skv;
8pub use skv::*;
9use std::io::prelude::*;
10
11/// 传入文件 path 打印 hex (print file hex)  
12///
13/// in: file path 显示行数
14/// fun: print 16xn hex  
15/// 传入文件 path 打印 hex   
16pub fn show_file_hex(path: &str, show_lines: i32) -> std::io::Result<()> {
17    let mut f = std::fs::File::open(path)?;
18    let mut buffer = [0; 16];
19    for _ in 0..show_lines {
20        // 读取文件中的16个字节
21        let n = f.read(&mut buffer[..])?;
22        print!("{:02x?} ", &buffer[..n]);
23        println!("{:03?}", &buffer[..n]);
24        if n < 16 {
25            break;
26        }
27    }
28    Ok(())
29}