2 个版本
0.1.2 | 2023 年 8 月 17 日 |
---|---|
0.1.1 | 2023 年 8 月 17 日 |
0.1.0 |
|
#443 在 调试
被 ots-client 使用
10KB
170 行
Hex 美化打印机
提供美化十六进制打印功能的库。
- 使用
simple_hex()
方式渲染单行十六进制转储。 - 使用
pretty_hex()
方式渲染带有地址和 ASCII 表示的列式多行十六进制转储。 - 使用
config_hex()
方式以指定格式渲染十六进制转储。
simple_hex()
的示例
输入
use hex_pp::*;
let v = vec![222, 173, 190, 239, 202, 254, 32, 24];
assert_eq!(simple_hex(&v), format!("{}", v.hex_dump()));
println!("{}", v.hex_dump());
输出
de ad be ef ca fe 20 18
pretty_hex()
的示例
输入
use hex_pp::*;
let v: &[u8] = &random::<[u8;30]>();
assert_eq!(pretty_hex(&v), format!("{:?}", v.hex_dump()));
println!("{:?}", v.hex_dump());
输出
Length: 30 (0x1e) bytes
0000: 6b 4e 1a c3 af 03 d2 1e 7e 73 ba c8 bd 84 0f 83 kN......~s......
0010: 89 d5 cf 90 23 67 4b 48 db b1 bc 35 bf ee ....#gKH...5..
config_hex()
的示例
输入
use hex_pp::*;
let cfg = HexConfig {title: false, width: 8, group: 0, ..HexConfig::default() };
let v = &include_bytes!("data");
assert_eq!(config_hex(&v, cfg), format!("{:?}", v.hex_conf(cfg)));
println!("{:?}", v.hex_conf(cfg));
输出
0000: 6b 4e 1a c3 af 03 d2 1e kN......
0008: 7e 73 ba c8 bd 84 0f 83 ~s......
0010: 89 d5 cf 90 23 67 4b 48 ....#gKH
0018: db b1 bc 35 bf ee ...5..
受 haskell 的美化十六进制 启发。