#read-write #byte #byte-slice #endianness #read #write #io

simple-bytes

一个小巧易用的crate,用于修改或读取u8切片

15次发布

0.2.14 2023年7月17日
0.2.13 2023年6月24日
0.2.11 2022年6月12日
0.2.9 2022年1月22日
0.1.1 2020年11月24日

#274网络编程

Download history 315/week @ 2024-04-20 81/week @ 2024-04-27 123/week @ 2024-05-04 207/week @ 2024-05-11 260/week @ 2024-05-18 145/week @ 2024-05-25 258/week @ 2024-06-01 147/week @ 2024-06-08 102/week @ 2024-06-15 151/week @ 2024-06-22 103/week @ 2024-06-29 213/week @ 2024-07-06 200/week @ 2024-07-13 105/week @ 2024-07-20 135/week @ 2024-07-27 279/week @ 2024-08-03

每月766次下载
用于 16 个crate(直接使用9个)

MIT/Apache

47KB
1.5K SLoC

CI crates.io docs.rs

一个小巧易用的crate,用于修改或读取u8切片。

使用“大端序”读取或写入任意数值。

读取切片

use simple_bytes::{Bytes, BytesRead};

let bytes: Vec<u8> = (0..255).collect();
let mut slice: Bytes = bytes.as_slice().into();

assert_eq!(0, slice.read_u8());
assert_eq!(1, slice.read_u8());
assert_eq!(515, slice.read_u16());

写入切片

use simple_bytes::{BytesMut, BytesRead, BytesWrite};

let mut bytes = [0u8; 10];
let mut slice = BytesMut::from(bytes.as_mut());

slice.write_u8(1);
slice.write_f32(1.234);
slice.write(&[1u8, 2u8]);
assert_eq!(3, slice.remaining().len());

lib.rs:

一个小巧易用的crate,用于修改或读取u8切片。

使用“大端序”读取或写入任意数值。

读取切片

use simple_bytes::{Bytes, BytesRead};

let bytes: Vec<u8> = (0..255).collect();
let mut slice: Bytes = bytes.as_slice().into();

assert_eq!(0, slice.read_u8());
assert_eq!(1, slice.read_u8());
assert_eq!(515, slice.read_u16());

写入切片

use simple_bytes::{BytesMut, BytesRead, BytesWrite};

let mut bytes = [0u8; 10];
let mut slice = BytesMut::from(bytes.as_mut());

slice.write_u8(1);
slice.write_f32(1.234);
slice.write(&[1u8, 2u8]);
assert_eq!(3, slice.remaining().len());

无运行时依赖