#binary-data #binary #buffer #byte #writer #binary-reader #reader

buffer_io

一个用于读取和写入二进制缓冲区的直观库

4 个稳定版本

1.0.3 2020年7月11日
1.0.0 2019年12月9日

#2339 in 编码

MIT 许可协议

19KB
312

这个crate提供读取和写入二进制缓冲区的便捷方法。它支持写入原始类型,以及将字符串和向量写入内存流和文件。

安装

这个crate与Cargo一起工作,并在crates.io上。将其添加到您的Cargo.toml中,如下所示

[dependencies]
buffer_io = "1"

如果您想向缓冲区写入数据,可以这样操作

use crate::buffer::{BufferReader, BufferWriter, SeekOrigin};
use std::io::Cursor;
let mut buffer = BufferWriter::new(Cursor::new(Vec::new()));
buffer.write_u32(9001)?;
buffer.write_u32(9002).unwrap()?;
buffer.write_string("Hello World!")?;

然后您可以返回一个包含整个缓冲区的vector

let data = buffer.to_vec()?;

读取缓冲区同样简单。

let mut reader = BufferReader::new(File::open("test.bin")?);
let magic = reader.read_u32()?;
let body = reader.read_string()?;

依赖项

~305–770KB
~18K SLoC