用户操作
[即时聊天] [发私信] [加为好友]
林建华ID:fire_woods
修改头像
115823次访问,排名745好友8人,关注者25
http://blog.csdn.net/fire_woods/archive/2005/09/07/473913.aspx
http://blog.csdn.net/fire_woods/archive/2005/09/09/475735.aspx
博客上有介绍
[编辑我的资料]
fire_woods的文章
原创 95 篇
翻译 1 篇
转载 89 篇
评论 125 篇
风林火山的公告
最近评论
BambooFamily:学习!
fire_woods:解决了
J:后来解决这个问题了吗?
lidong145:
df:能不能给我发一份pst邮件处理的相关代码和资料,我的邮件是:
sars_demon@yahoo.com.cn
或者
sars_demon@163.com
文章分类
收藏
相册
青山湖新拓展培训
技术网站
~我的下载空间
dudu的远程控制论坛
male110的梦幻软件屋
vchelp我经常去的论坛(RSS)
桌面搜索项目(RSS)
浙大ACM(RSS)
老婆的blog
装修日记
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes

原创 邮件内容分析收藏

新一篇: 老婆明天回来 | 旧一篇: ACM介绍

   郁闷了一个多星期的问题终于有眉目了。
    问题本身其实不是很难,要从outlook和outlook express邮箱里面将所有的邮件提取出来,并且能够得到主题,发件人,收件人,正文,附件等内容。
    邮件客户端会把服务器端的邮件下载下来,并保存到本地的某个目录中,outlook是保存成pst格式的,outlook express是保存成dbx格式的,这两种格式都是一个文件存放n个邮件的方式。
    首先能想到的方法就是直接去解析这些格式,我很顺利的从网上下载到了格式解析的源代码,可以将pst格式转化为msg格式,可以将dbx文件解析成eml文件,后面的两种文件格式都是存放一个邮件的,并且可以用相应的邮件可户端打开。
    现在只要解析这2种格式就可以了,眼看顺利就在眼前,谁知道这时候问题出来了,msg格式还好,是用unicode编码的,以明文形式储存。而eml是采用mime标准的,英文一般是用base64编码格式的,这个从网上顺利找到源代码解开。但是中文的时候就麻烦了,一般默认的编码是采用gb2312字符集,quoted-printable编码格式。由于中文邮件中一般都有英文字母,所以里面一般是采用base64和quoted-printable混编的模式,而文件是用超文本格式存放的,如果自己解析的话估计要花不少时间,而且考虑到有可能采用繁体和unicode字符集,不同的编码格式,估计是个漫长的过程。
    把直接解析编码放在一边,考虑mime标准。在网上一搜,果然不少mime的源码,那过来一试,也还是只支持英文的。不过终于发现有gmime2标准,是最新的邮件编码标准,提供源代码,迫不及待的下来以后,希望又破灭了。只有for debian的版本,还要n个库支持,改成能在windows下能够编译通过的版本也不是一件容易的事情啊,而且这个代码的作者还写道,如果谁能在windows下编译通过的话,记得告诉他一下。
    正在抉择是自己解析格式好还是改编gmime2好的时候,突然发现自己有点傻。既然outlook和outlook express能够读的话,按照微软的风格,应该会有API提供的。就像WORD一样,我前面的努力就像是要把WORD格式分析的清清楚楚,然后编码实现,而放着现成的接口不用。
    下面的工作就简单了,支持邮件的dll是MAPI.dll,里面包罗万象,从接受,发送,解析甚至构建邮件服务器都有。下载MSDN的例程后,outlook express可以顺利解决,根本连dbx格式都不用分析,直接有接口按顺序找邮件,得到邮件内容。outlook方面例程不支持,老是说我的邮件默认配置有问题,不过既然走到这一步了,方法就多的是了,我采用的是CreateDispatch方式,跟控制office一样。根据接口描述很方便的可以解析每一封邮件。
    问题从技术上来说基本上解决了,但是还要有一些局限性,比如某个单独的.eml文件,或者是没有加到客户端的dbx或者pst文件都不能解析。不过大部分能做就可以了。这些问题留到以后再解决吧。还要foxmail,估计也要研究个半天了,先不考虑这些吧。

发表于 @ 2005年08月23日 17:04:00|评论(loading...)|编辑

新一篇: 老婆明天回来 | 旧一篇: ACM介绍

评论

#王永国 发表于2006-08-16 15:37:00  IP: 60.166.6.*
先生:
您好!
我也遇到“邮件内容分析”这问题,能不能将此段程序发给我看看,让我少走点弯路!
我的E-Mail:ygwang21@163.com
#严俊斌 发表于2006-10-13 20:42:00  IP: 59.61.24.*
您好!
我近来研究的一个问题也涉及到这方面的内容。
能否也发给我一下。
我的E-mail: yjbly1068@163.com
不胜感谢!
#cwq 发表于2007-08-24 08:29:01  IP: 202.127.26.*
您好!
我近来研究的一个问题也涉及到这方面的内容。
能否也发给我一下。
我的E-mail: wqchen@trimps.ac.cn
不胜感谢
#fire_woods 发表于2007-08-25 13:52:33  IP: 125.119.85.*
由于这个项目后来没有继续,所以只是停留在研发阶段.
#justforfan528 发表于2007-10-18 16:04:37  IP: 219.140.167.*
你好!我最近也遇到pst文件格式解析的问题,您能否发段源代码或者是网上的资料给我,本人万分感激!
#justforfan528 发表于2007-10-18 16:05:13  IP: 219.140.167.*
你好!我最近也遇到pst文件格式解析的问题,您能否发段源代码或者是网上的资料给我,本人万分感激!
EMAIL: justforfan528@gmail.com
#df 发表于2008-07-14 11:54:40  IP: 58.49.235.*
能不能给我发一份pst邮件处理的相关代码和资料,我的邮件是:
sars_demon@yahoo.com.cn
或者
sars_demon@163.com
发表评论  


登录
Csdn Blog version 3.1a
Copyright © 风林火山