std :: fs板条箱中的标准write_all和write函数允许将字符串切片(从技术上来说是&[u8]?)写入文件。
是否可以将十六进制数字直接写入文件?
您可以使用此功能:
use std::io::{Result, BufWriter, Write};
fn write_hex<W: Write>(file: &mut BufWriter<W>, data: &[u8]) -> Result<()> {
for val in data {
write!(file, "{:02X}", val)?;
}
Ok(())
}
由于它分别写入每个十六进制数,因此它要求您使用缓冲流。您可以用BufWriter::new(file)
创建一个。您可以将{:02X}
更改为{:02x}
以写小写十六进制。