Expand description
A simple parser and reader for Thumbs.db files.
This uses the crate ole for parsing Thumbs.db files.
Then, it extracts the thumbnails.
§Example
use thumbsdb::ThumbsDb;
// Reads a Thumbs.db file
let thumbsdb = ThumbsDb::from_path("assets/Thumbs.db").unwrap();
// Iterates through all thumbnails inside the Thumbs.db
for thumbnail in thumbsdb.iterate() {
let mut buf = std::vec::Vec::<u8>::new();
// Extracts the thumbnail and saves it into a file
match thumbsdb.extract_thumbnail(thumbnail, &mut buf) {
Ok(()) => {
use std::io::Write;
let mut output_file
= std::fs::File::create(format!("assets/streams/{}",
thumbnail.name())).unwrap();
output_file.write_all(&buf);
},
Err(e) => eprintln!("error: {}", e)
};
}
§Compatibility
This crate works fine for rust 1.9 or greater.
Structs§
- Thumbnail
- A thumbnail inside a Thumbs.db file.
- Thumbnail
Iterator - A simple iterator for thumbnails inside a Thumbs.db file.
- Thumbs
Db - A Thumbs.db file reader.
Enums§
- Error
- Errors related to the process of parsing and reading.