6

我有一个 .eml 文件。我想做的是从此 .eml 文件中检索发件人、收件人、主题、正文和附件(如果有)并保存到数据库。我需要在 C# 中做到这一点,并且没有任何第三方应用程序。

我搜索了一些源代码,但找不到任何源代码,除了这个.net 中是否可以读取.eml 文件 但是没有源代码,这更有帮助。

4

1 回答 1

9

紧急参考以下链接:

http://www.codeproject.com/Articles/76607/Easily-Retrieve-Email-Information-from-EML-Files-R

protected CDO.Message ReadMessage(String emlFileName)
{
    CDO.Message msg = new CDO.MessageClass();
    ADODB.Stream stream = new ADODB.StreamClass();
    stream.Open(Type.Missing, ADODB.ConnectModeEnum.adModeUnknown, ADODB.StreamOpenOptionsEnum.adOpenStreamUnspecified, String.Empty, String.Empty);
    stream.LoadFromFile(emlFileName);
    stream.Flush();
    msg.DataSource.OpenObject(stream, "_Stream");
    msg.DataSource.Save();
    return msg;
}

您还可以从以下位置获得有关 elm 解析的帮助:

http://blog.onderweg.eu/2010/12/parsing-eml-files-in-c/

这也是有用的教程:

http://www.emailarchitect.net/eagetmail/kb/csharp.aspx?cat=18

于 2013-04-15T10:50:26.850 回答