16个版本
使用旧Rust 2015
0.1.15 | 2018年3月23日 |
---|---|
0.1.14 | 2018年3月21日 |
在 解析器实现 中排名第2652
每月下载量95次
在 3 个crate(2 个直接)中使用
595KB
838 行
OLE
Microsoft复合文档文件的简单解析器和读取器。
这包括一个基本的解析器,用于验证给定文件或给定流的格式。它还包括一个读取器,用于迭代条目以及从OLE存储中提取文件。
用法
将此添加到您的 Cargo.toml
[dependencies]
ole = "0.1.15"
并将此添加到您的crate根目录
extern crate ole;
示例
use ole::Reader;
use std::io::{Read, Write};
let mut file = std::fs::File::open("assets/Thumbs.db").unwrap();
let mut parser = Reader::new(file).unwrap();
// Iterate through the entries
for entry in parser.iterate() {
println!("{}", entry);
}
// We're going to extract a file from the OLE storage
let entry = parser.iterate().next().unwrap();
let mut slice = parser.get_entry_slice(entry).unwrap();
let mut buffer = std::vec::Vec::<u8>::with_capacity(slice.len());
slice.read_to_end(&mut buffer);
// Saves the extracted file
let mut extracted_file = std::fs::File::create("./file.bin").unwrap();
extracted_file.write_all(&buffer[..]);
版本
版本说明可在 RELEASES.md 中找到。
兼容性
ole
似乎适用于rust 1.9及以上版本。