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 41/week @ 2024-03-24 95/week @ 2024-03-31 53/week @ 2024-04-07 58/week @ 2024-04-14 80/week @ 2024-04-21 85/week @ 2024-04-28 113/week @ 2024-05-05 144/week @ 2024-05-12 103/week @ 2024-05-19 63/week @ 2024-05-26 141/week @ 2024-06-02 249/week @ 2024-06-09 297/week @ 2024-06-16 235/week @ 2024-06-23 49/week @ 2024-06-30 73/week @ 2024-07-07

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();

无运行时依赖