#nbt #minecraft #serialization #file-format #serde #binary-format

hematite-nbt

一个功能齐全的库,用于处理Minecraft的命名二进制标签(NBT)文件格式,包括Serde支持

8个版本 (4个破坏性版本)

使用旧的Rust 2015

0.5.2 2021年5月15日
0.5.1 2021年2月22日
0.5.0 2020年8月18日
0.4.1 2019年8月20日
0.1.0 2015年12月1日

#322 in 编码

Download history • Rust 包仓库 193/week @ 2024-03-11 • Rust 包仓库 233/week @ 2024-03-18 • Rust 包仓库 222/week @ 2024-03-25 • Rust 包仓库 320/week @ 2024-04-01 • Rust 包仓库 171/week @ 2024-04-08 • Rust 包仓库 209/week @ 2024-04-15 • Rust 包仓库 219/week @ 2024-04-22 • Rust 包仓库 214/week @ 2024-04-29 • Rust 包仓库 199/week @ 2024-05-06 • Rust 包仓库 204/week @ 2024-05-13 • Rust 包仓库 193/week @ 2024-05-20 • Rust 包仓库 203/week @ 2024-05-27 • Rust 包仓库 154/week @ 2024-06-03 • Rust 包仓库 141/week @ 2024-06-10 • Rust 包仓库 196/week @ 2024-06-17 • Rust 包仓库 232/week @ 2024-06-24 • Rust 包仓库

每月749次下载
用于 25 个crate(23直接使用)

MIT 许可证

87KB
2K SLoC

hematite_nbt hematite_nbt at crates.io hematite_nbt at docs.rs Build Status

此仓库包含Hematite项目的独立nbtcrate,用于处理Minecraft的命名二进制标签(NBT)格式。

这不是唯一的NBT相关crate,但它有一些显著的功能

  • 完全支持通过Serde进行序列化和反序列化类型。这意味着您可以读取和写入任何使用标准#[derive(Serialize, Deserialize)] traits注解的结构的NBT二进制格式(如果它确实有有效的NBT表示)。

  • 一个API,通过nbt::Blobnbt::Value来区分完整和部分NBT对象。只有完整的对象可以序列化。

  • 支持Minecraft 1.12中引入的TAG_Long_Array数据。

  • 支持 vanilla Minecraft 客户端使用的修改后的 UTF-8 编码。

许可证

在 MIT 许可证的条款下授权。

依赖

~0.8–1.6MB
~34K SLoC