#data-processing #byte #series #array #byteorder #java-like #format

nightly byte_array

支持使用 byteorder 进行类似 Java 系列处理的库

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 次下载

MIT 许可证

16KB
203 行代码(不包括注释)

ByteArray

Version
一个支持类似 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
用户定义 可选

文档

Docs.rs

许可证

自 2019 年起在 MIT 许可证下分发。

依赖关系

~120KB