11 个版本
0.2.5 | 2024年1月11日 |
---|---|
0.2.4 | 2023年9月30日 |
0.2.3 | 2023年8月17日 |
0.2.2 | 2023年5月8日 |
0.1.2 | 2022年6月2日 |
#230 在 数据库接口
每月511 次下载
用于 4 个 Crates (2 直接)
10MB
296K SLoC
rust-libesedb
libyal/libesedb 的安全 Rust 绑定(通过 libesedb-sys)。
use libesedb::EseDb;
fn main() {
let filename = std::env::args()
.nth(1)
.unwrap_or("Catalog1.edb".to_string());
let db = EseDb::open(filename).unwrap();
println!("Db load finished!");
let string = db.table_by_name("string").unwrap();
for rec in string.iter_records().unwrap() {
let rec = rec.unwrap();
let vals = rec.iter_values().unwrap().map(|v| v.unwrap_or_default().to_string()).collect::<Vec<_>>();
println!("{}", vals.join("\t"));
}
}
测试数据
未来更改
v0.3.0
- 移除
close()
方法,改用drop!()
- 懒加载
Value
(存储某种类型的记录引用,类似于当前内部 LongValue 和 MultiValue) Value
以FlatValue
、LongValue
、MultiValue
变体形式存在,具有定义的ValueType
- 移除
许可证和致谢
本项目根据 LGPL-3.0 或更新版 许可发布。
用于 FILETIME/OLETIME 转换的 time
crate(在 MIT 许可 下可用)。
此库绑定的核心功能是 Joachim Metz (~joachimmetz)
的辛勤工作。