Struct thumbsdb::ThumbsDb
[−]
[src]
pub struct ThumbsDb<'ole> { /* fields omitted */ }
A Thumbs.db file reader.
The crate ole
is used for parsing the file (which is an OLE file).
Basic Example
use thumbsdb::ThumbsDb; let mut file = std::fs::File::open("assets/Thumbs.db").unwrap(); let thumbsdb = ThumbsDb::new(file).unwrap(); for thumbnail in thumbsdb.iterate() { println!("Thumbnail #{}, name={}", thumbnail.id(), thumbnail.name()); }
Methods
impl<'ole> ThumbsDb<'ole>
[src]
pub fn new<T: 'ole>(readable: T) -> Result<ThumbsDb<'ole>, Error> where
T: Read,
[src]
T: Read,
Constructs a new ThumbsDb
.
Examples
use thumbsdb; let f = std::fs::File::open("assets/Thumbs.db").unwrap(); let mut hidden_thumbsdb = thumbsdb::ThumbsDb::new(f).unwrap();
pub fn from_path(path: &str) -> Result<ThumbsDb, Box<Error>>
[src]
Constructs a new ThumbsDb
from filepath.
Examples
use thumbsdb; let mut hidden_thumbsdb = thumbsdb::ThumbsDb::from_path("assets/Thumbs.db").unwrap();
ⓘImportant traits for ThumbnailIterator<'ole>pub fn iterate(&self) -> ThumbnailIterator
[src]
ⓘImportant traits for ThumbnailIterator<'ole>
Returns an iterator for thumbnails inside the Thumbs.db
Examples
use thumbsdb; let mut t = thumbsdb::ThumbsDb::from_path("assets/Thumbs.db").unwrap(); for thumbnail in t.iterate() { println!("Entry #{}, filename={}", thumbnail.id(), thumbnail.name()); }
impl<'ole> ThumbsDb<'ole>
[src]
pub fn extract_thumbnail(
&self,
thumbnail: &Thumbnail,
buf: &mut Vec<u8>
) -> Result<(), Error>
[src]
&self,
thumbnail: &Thumbnail,
buf: &mut Vec<u8>
) -> Result<(), Error>
Extract the thumbnail from the Thumbs.db file.
Examples
use thumbsdb; let mut thumbs = thumbsdb::ThumbsDb::from_path("assets/Thumbs.db").unwrap(); let thumbnail = thumbs.iterate().next().unwrap(); let mut buffer = std::vec::Vec::<u8>::new(); thumbs.extract_thumbnail(thumbnail, &mut buffer);