8 个版本 (5 个重大变更)

0.7.0 2024 年 1 月 24 日
0.6.0 2023 年 9 月 7 日
0.5.2 2023 年 8 月 12 日
0.5.1 2023 年 7 月 23 日

#462 in 文件系统


用于 xdvdfs-cli

MIT 许可证

83KB
2K SLoC

xdvdfs-core

xdvdfs-core 是一个用于处理 XDVDFS 元数据的库。

以下是一个简单的示例,从给定路径读取文件:

async fn read_from_path(xiso: &Path, file_path: &str) -> Box<[u8]> {
    let mut xiso = std::fs::File::open(xiso).unwrap();
    let volume = xdvdfs::read::read_volume(&mut xiso).await.unwrap();

    let file_dirent = volume.root_table.walk_path(&mut xiso, file_path).await.unwrap();

    let data = file_dirent.node.dirent.read_data_all(&mut xiso).await.unwrap();
    data
}

此库支持 no_std。可以通过实现 xdvdfs::blockdev 中的 traits 来定义自定义块设备。

没有 alloc 功能,仅支持基本元数据功能。启用 alloc 功能可启用一些需要分配的实用函数(如上面的 read_data_all)。

xdvdfs-cli 的源代码提供了一个更详细的示例,说明如何在具有 std 的环境中使用 xdvdfs-core。

请注意,xdvdfs 目前不提供稳定的 API,且遵循 major 版本 0 的 semver,每个小版本更新可能包括或可能不包括破坏性变更。

依赖关系

~3.5–5MB
~152K SLoC