Crate thumbsdb [−] [src]
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. |
ThumbnailIterator |
A simple iterator for thumbnails inside a Thumbs.db file. |
ThumbsDb |
A Thumbs.db file reader. |
Enums
Error |
Errors related to the process of parsing and reading. |