| Crates.io | emlx |
| lib.rs | emlx |
| version | 0.1.0 |
| created_at | 2021-10-06 09:17:11.677595+00 |
| updated_at | 2021-10-06 09:17:11.677595+00 |
| description | Prse Apple Mail.app emlx files into eml and related metadata. |
| homepage | https://github.com/terhechte/emlx |
| repository | https://github.com/terhechte/emlx |
| max_upload_size | |
| id | 461049 |
| size | 55,451 |
Parses Apple Mail.app Emlx Files.
Retrives the actual message, meta information as plist, and the flags of the message.
The actual message is returned as a &[u8] slice in the eml format and can then be parsed with other Rust eml parsers, such as eml-parser.
use emlx;
let contents: &[u8] = ...
let parsed = parse_emlx(contents).unwrap();
// Flags are a struct with boolean and usize values
let is_read = parsed.flags.is_read;
// Dictionary is a key value map to data in the emlx plist part.
let subject = parsed.dictionary["subject"].as_string().unwrap();
// The actual eml message as bytes
let message = std::str::from_utf8(parsed.message).unwrap();
Information on the Emlx file format was retrieved from these sites: