8 个版本

0.3.2 2023 年 8 月 23 日
0.3.0 2020 年 1 月 6 日
0.2.3 2019 年 9 月 5 日
0.2.2 2019 年 6 月 1 日
0.1.1 2019 年 5 月 23 日

#395解析器实现

Download history 3125/week @ 2024-03-14 2601/week @ 2024-03-21 2743/week @ 2024-03-28 3973/week @ 2024-04-04 2284/week @ 2024-04-11 3122/week @ 2024-04-18 3555/week @ 2024-04-25 2067/week @ 2024-05-02 2388/week @ 2024-05-09 2353/week @ 2024-05-16 1939/week @ 2024-05-23 3067/week @ 2024-05-30 2895/week @ 2024-06-06 2326/week @ 2024-06-13 2056/week @ 2024-06-20 913/week @ 2024-06-27

8,762 每月下载次数
18 软件包(直接 9 个)中使用

MIT/Apache

37KB
866

Build Status crates.io

winstructs

此软件包包含跨 Windows 格式常用的结构的定义和一些解析逻辑。

请参阅 文档 了解支持的结构的用法说明。

示例

以下是一个解析 GUID 的示例。

use winstructs::guid::Guid;

fn main() {
   let raw_guid: &[u8] = &[0x25, 0x96, 0x84, 0x54, 0x78, 0x54, 0x94, 0x49,
                           0xa5, 0xba, 0x3e, 0x3b, 0x3, 0x28, 0xc3, 0xd];
                           
   let guid = Guid::from_buffer(raw_guid).unwrap();
   assert_eq!(format!("{}", guid), "54849625-5478-4994-A5BA-3E3B0328C30D");
}

lib.rs:

此软件包包含跨 Windows 格式常用的结构的定义和一些解析逻辑。

文档

API

一般来说,此软件包中的结构将具有 from_reader 方法,如果可以从 Read 实例中读取,或者具有 from_stream 方法,如果读取它们需要 Read + Seek

from_buffer 也作为便利方法提供,但它通常只是构建一个游标并使用内部 from_readerfrom_stream

依赖关系

~2.7–3.5MB
~74K SLoC