从邮件文件中读取电子邮件

时间:2008-11-26 17:00:44

标签: c# .net email

我有大量的邮件存档,我想要去复制和整理。存档采用mbox格式或包含单个邮件。为了增加一些复杂性,一些文件具有Windows EOL序列,一些文件具有unix EOL 使用C#。如何读取存档并将其拆分为单个消息,或读取单个消息文件?在python中,我会使用 mailbox.mbox 类,但我在C#文档中看不到匹配的功能。

3 个答案:

答案 0 :(得分:1)

你不太可能找到一个库来读取C#的文件 - 没有那么多的Unix用户也使用C#。

我要做的是:

  1. 阅读Python代码,然后将其移植到C#
  2. 在线查找mbox格式的说明。因为它是一个Unix系统,很可能格式只是一个纯文本文件,应该很容易解析。

答案 1 :(得分:0)

大多数标准Unix邮件文件使用以“From”

开头的行来分隔条目

因此,如果您将邮件文件作为文本文件读入并在每次在行的开头看到字符串“From”时切换到新的邮件条目它应该工作 - 其他地方的任何字符串都应该已经被电子邮件程序

分隔

答案 2 :(得分:0)

如果是一次性活动,我认为对消息进行排序最简单的步骤:

  1. 将所有mbox文件合并为一个
  2. 将编译加载到thunderbird作为本地文件夹
  3. 在文件夹
  4. 上运行一个Duplicate message finder Add-On
  5. 删除发现的重复
  6. 压缩文件夹
  7. 采取无重复的邮件列表:)
  8. Duplicate Elimiators (Add-Ons for Thunderbird)

    我用过这个:删除重复的消息(备用)