4个版本

0.2.0 2019年4月2日
0.1.2 2016年2月8日
0.1.1 2015年12月31日
0.1.0 2015年12月28日

#89 in #reader-writer

Download history • Rust 包仓库 41/week @ 2024-03-24 • Rust 包仓库 95/week @ 2024-03-31 • Rust 包仓库 53/week @ 2024-04-07 • Rust 包仓库 58/week @ 2024-04-14 • Rust 包仓库 80/week @ 2024-04-21 • Rust 包仓库 85/week @ 2024-04-28 • Rust 包仓库 113/week @ 2024-05-05 • Rust 包仓库 144/week @ 2024-05-12 • Rust 包仓库 103/week @ 2024-05-19 • Rust 包仓库 63/week @ 2024-05-26 • Rust 包仓库 141/week @ 2024-06-02 • Rust 包仓库 249/week @ 2024-06-09 • Rust 包仓库 297/week @ 2024-06-16 • Rust 包仓库 235/week @ 2024-06-23 • Rust 包仓库 49/week @ 2024-06-30 • Rust 包仓库 73/week @ 2024-07-07 • Rust 包仓库

676 每月下载量
3 个crate中使用

MIT 许可证

15KB
312

bitbit

Rust的逐位读写类型

致谢和许可证

版权所有(c)2015 Robert Norris。MIT许可证。请参阅LICENSE。


lib.rs:

bitbit提供逐位读取和写入流的函数。

读取

let r = File::open("somefile")?;
let mut br = BitReader::new(r);

let is_one = br.read_bit()?;

let byte = br.read_byte()?;

let num = br.read_bits(5)?;

使用缓冲读取器将提高性能

let r = File::open("somefile")?;
let buff_reader = BufReader::new(r);
let mut br: BitReader<_, MSB> = BitReader::new(buff_reader);

写入

let w = File::create("somefile")?;
let mut bw = BitWriter::new(w);

bw.write_bit(true)?;

bw.write_byte(0x55)?;

bw.write_bits(0x15, 5)?;

bw.pad_to_byte();

使用缓冲写入器将提高性能

let w = File::create("somefile")?;
let mut buf_writer = BufWriter::new(w);
let mut bw = BitWriter::new(&mut buf_writer);
...
buf_writer.flush();

无运行时依赖