7

I am trying to create a JS script to open and view Eml file. But till now I am stuck and with no way to go further. Can someone give me some directions. I was planning to post back my findings here with code so others can benefit too.

esafwan
  • 17,311
  • 33
  • 107
  • 166
  • I'm interested in that question too. In the meantime, I suggest using [mhonarc](https://www.mhonarc.org/) to convert (on the server) the `eml` files to `html`. – Clément Nov 20 '17 at 02:31

1 Answers1

1

The first step is to load the EML file either as a String or as a Stream. A EML file should look like this:

Date: Wed, 29 Jan 2014 11:10:06 +0100
To: "Foo Bar" <foo.bar@example.com>
From: Online Shop <no-reply@example.com>
Subject: Winter promotions
Content-Type: text/plain; charset=utf-8

Some Content

If you are looking to parse it yourself you have to look for keys like this:

/[\n\r]+[\-a-zA-Z]+:/      (a newline followed by a word with no spaces and a colon)

Everything after the colon and before the next key will become the value for that key.

  • However bear in mind that keys will repeat and the order they appear matters,
  • Some keys are optional and most eml you will find nowadays have plenty of custom Keys,
  • You should double check the values as some will need a decode algorithm to be usable.

If you want to learn more about it you may look into these:

If you want some working code ready to use you may look here:

JesusTCS
  • 158
  • 10