Що таке файл EML?
Формат файлу EML представляє повідомлення електронної пошти, збережені за допомогою Outlook та інших відповідних програм. Майже всі клієнти електронної пошти підтримують цей формат файлу через його відповідність стандарту формату інтернет-повідомлень RFC-822. Microsoft Outlook є програмним забезпеченням за замовчуванням для відкриття типів повідомлень EML. Файли EML можна використовувати для збереження на диску, а також для надсилання одержувачам за допомогою протоколів зв’язку.
Коротка історія EML
Специфікації формату файлу EML доступні відповідно до стандартного формату RFC 822. До RFC-822 RFC-733 регулював правила обміну мережевими повідомленнями, поки в 1982 році перший не був створений як вдосконалення lateral через встановлення стандартів ARPA. У той же час Microsoft створила власні модулі COM для розробки власного клієнта електронної пошти, тобто Outlook Express. RFC-822 взяв шлях, який став власним форматом, коли Microsoft відхилилася від відкритого стандарту та створила формат файлу PST, у якому електронні листи зберігаються у форматі високоструктурованої бази даних. Це призвело до проблем для користувачів поштових клієнтів сторонніх виробників, коли електронні листи пересилалися з Microsoft Outlook.
Це було в 2001 році, коли стандарт 822 було розширено до 2822 - Інтернет-формат повідомлень, який зараз використовується для створення, читання та надсилання повідомлень EML у форматі MIME RFC-822.
Специфікації формату файлу EML
Файли EML складаються з двох окремих розділів:
- Заголовки - містить інформацію про заголовок повідомлення
- Тіло повідомлення – містить серію інформації, яка може включати вміст повідомлення, вбудовані зображення та вкладення
Інформація про заголовки
Файл EML складається з інформації заголовків і, за бажанням, тіла повідомлення. Кожен рядок заголовка в EML складається з двох частин, розділених двокрапкою «:». Перший називається ім’ям заголовка, а наступний після двокрапки - тілом заголовка. Наприклад, до таких заголовків належать:
- Адреса електронної пошти відправника
- Адреса електронної пошти отримувача
- Тема електронного листа
- Штамп часу та дати повідомлення
Приклад заголовка
Від:<John@bmw.eml.light.com>
до:<Andy@fileformat.com>
Дата: Чт, 8 березня 2018 р. 10:43:37 +0100
Тема: bmw eml light
Тіло повідомлення
Тіло повідомлення EML містить основну інформацію електронної пошти у формі тексту, гіперпосилань і вкладень. Текст електронної пошти може містити звичайний читабельний текст, але це не обов’язково. У цьому випадку тіло повідомлення може бути порожнім або містити закодовані дані вкладень.
Вміст тіла повідомлення описується його Content-Type, який дозволяє програмам читання читати інформацію у відповідних форматах. Він фактично представляє характер і формат документа. Структура типу MIME або типу вмісту дуже проста; він складається з типу та підтипу, двох рядків, розділених ‘/’. Немає місця. “Тип” представляє категорію та може бути окремим або складеним типом. «Підтип» є специфічним для кожного типу. Список типів, які належать до категорії Content-Type, довгий, але деякі важливі типи вмісту такі:
Тип | Опис | Приклад підтипів |
---|---|---|
text | Представляє формат, який читається людиною | text/plain, text/html, text/css, text/javascript |
image | Представляє зображення будь-якого типу, за винятком відео | image/bmp, image/png, image/jpg, image/gif |
audio | Представляє будь-який формат аудіофайлу | audio/mdi, audio/wav |
application | Представляє будь-які двійкові дані | application/octet-stream, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf |
Відображення вкладення в EML Body
Тіло EML містить межі для кожного типу вмісту, який містить. Вкладення в тілі повідомлення ідентифікується за типом вмісту та розташуванням вмісту, як показано в наведеному нижче прикладі:
Content-Type: text/plain; charset#“windows-1252”; name#“apple app store.txt” Зміст-розпорядження: вкладення; ім’я файлу#“apple app store.txt” Кодування передачі вмісту: base64 X-Attachment-Id: f_jkhztmd02
Як видно, параметр Content-Disposition, встановлений для вкладення, дозволяє програмам читання отримувати інформацію про вкладення, таку як ім’я файлу вкладення та кодування передачі. За інформацією заголовка вкладення слідує закодований вміст вкладення, який потрібно прочитати.
Приклад електронної таблиці як вкладення
Тип вмісту: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; ім’я#“англійський_spodr.xlsx” Зміст-розпорядження: вкладення; ім’я файлу#“англійський_spodr.xlsx” Кодування передачі вмісту: base64 X-Attachment-Id: f_jkhztmd43