Какво е EML файл?
Файловият формат EML представлява имейл съобщения, записани с помощта на Outlook и други подходящи приложения. Почти всички имейл клиенти поддържат този файлов формат заради съответствието му със стандарта за формат на интернет съобщения RFC-822. Microsoft Outlook е софтуерът по подразбиране за отваряне на типове EML съобщения. EML файловете могат да се използват за запис на диск, както и за изпращане до получатели чрез комуникационни протоколи.
Кратка история на EML
Спецификациите на EML файловия формат са достъпни съгласно RFC 822 стандартен формат. Преди RFC-822, RFC-733 управляваше правилата за обмен на мрежови съобщения, докато през 1982 г. първият беше създаден като подобрение на страничните чрез установяване на стандарти ARPA. В същото време Microsoft създаде свои собствени COM модули за разработката на собствен имейл клиент, т.е. Outlook Express. RFC-822 пое по пътя, за да бъде установен като патентован формат, когато Microsoft се отклони от отворения стандарт и създаде PST файлов формат, където имейлите се записват във формат на силно структуриран база данни. Това доведе до проблеми за потребителите на имейл клиенти, които не са на Microsoft, когато имейлите бяха препратени от 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, е дълъг, но някои важни типове съдържание са както следва:
Тип | Описание | Пример за подтипове |
---|---|---|
текст | Представлява формат, който е четим от хора | текст/обикновен, текст/html, текст/css, текст/javascript |
image | Представлява изображение от всякакъв тип, с изключение на видеоклипове | image/bmp, image/png, image/jpg, image/gif |
audio | Представлява всеки формат на аудио файл | audio/mdi, audio/wav |
приложение | Представлява всякакъв вид двоични данни | приложение/октет-поток, приложение/vnd.mspowerpoint, приложение/xhtml+xml, приложение/xml, приложение/pdf |
Представяне на прикачения файл в основния текст на EML
Основният текст на EML съдържа граници за всеки тип съдържание, който съдържа. Прикаченият файл в тялото на съобщението се идентифицира чрез неговия Content-Type и Content-Disposition, както е показано в следния пример:
Content-Type: текст/обикновен; charset#“windows-1252”; име#“apple app store.txt” Съдържание-Разпореждане: запор; име на файл#“apple app store.txt” Кодиране на прехвърляне на съдържание: base64 X-Attachment-Id: f_jkhztmd02
Както може да се види, Content-Disposition, зададен на прикачен файл, позволява на приложенията за четене да получат информация за прикачени файлове, като име на прикачен файл и кодиране на прехвърляне. Информацията в заглавката на прикачения файл е последвана от кодирано съдържание на прикачения файл, което трябва да бъде прочетено.
Пример за електронна таблица като прикачен файл
Тип съдържание: приложение/vnd.openxmlformats-officedocument.spreadsheetml.sheet; име#“английски_spodr.xlsx” Съдържание-Разпореждане: запор; име на файл#“английски_spodr.xlsx” Кодиране на прехвърляне на съдържание: base64 X-Attachment-Id: f_jkhztmd43