4 个版本
| 0.1.3 | 2019 年 3 月 18 日 |
|---|---|
| 0.1.2 | 2019 年 3 月 10 日 |
| 0.1.1 | 2019 年 3 月 10 日 |
| 0.1.0 | 2019 年 3 月 9 日 |
#12 in #byteorder
每月 28 次下载
16KB
203 行代码(不包括注释)
ByteArray
一个支持类似 Java 系列处理的库。当您已经知道数据格式时,这很有用。另一方面,对无效数据的处理相对较差,因此不建议用于不确定的数据。
安装
[dependencies]
byte_array = "0.1"
用法
use byte_array::ByteArray;
fn main() {
// Create an empty ByteArray
let mut ba = ByteArray::new();
// Input data
let a: f64 = 3.14;
let b: u16 = 1234;
let c: String = String::from("hello");
// Write data to ByteArray
ba.write(&a);
// ( Using Operator <<= )
ba <<= &b;
ba <<= &c;
// Read data from ByteArray
ba.seek_first();
assert_eq!(a, ba.read::<f64>()); // 3.14
assert_eq!(b, ba.read_safe::<u16>().unwrap()); // 1234
assert_eq!(c, ba.read::<String>()); // "hello"
}
支持的数据类型
| 数据类型 | 支持 |
|---|---|
| bool | 是 |
| u8 | 是 |
| u16 | 是 |
| u32 | 是 |
| u64 | 是 |
| u128 | 是 |
| i8 | 是 |
| i16 | 是 |
| i32 | 是 |
| i64 | 是 |
| i128 | 是 |
| f32 | 是 |
| f64 | 是 |
| --------------- | ----------- |
| usize 作为 u64 | 是 |
| isize 作为 i64 | 是 |
| --------------- | ----------- |
| Vec | 是 |
| String | 是 |
| ByteArray | 是 |
| 用户定义 | 可选 |
文档
许可证
自 2019 年起在 MIT 许可证下分发。
依赖关系
~120KB