如何解析eml文件格式,有谁知道么???
一般大家怎么用程序解析eml格式文件取出正文,附件。。。。 --------------------编程问答-------------------- up! --------------------编程问答-------------------- http://www.china-askpro.com/msg8/qa67.shtml --------------------编程问答-------------------- 有标志 具体在codeproject上找 --------------------编程问答-------------------- 和大家分享一个解决方案,使用这种方法,可以非常容易读取和"EML"邮件相关的所有信息1、添加COM组件cdosys.dll的引用,如图
2、相关代码
/// <summary>
/// 获取eml文件的主体内容
/// </summary>
/// <param name="file">eml文件的路径</param>
/// <returns>eml文件的主体内容</returns>
public string ReadEML(string file)
{
CDO.Message oMsg = new CDO.Message();
ADODB.Stream stm = null;
//读取EML文件到CDO.MESSAGE,做分析的话,实际是用了下面的部分
try
{
stm = new ADODB.Stream();
stm.Open(System.Reflection.Missing.Value,
ADODB.ConnectModeEnum.adModeUnknown,
ADODB.StreamOpenOptionsEnum.adOpenStreamUnspecified,
"", "");
stm.Type = ADODB.StreamTypeEnum.adTypeBinary;//二进制方式读入
stm.LoadFromFile(file); //将EML读入数据流
oMsg.DataSource.OpenObject(stm, "_stream"); //将EML数据流载入到CDO.Message,要做解析的话,后面就可以了。
}
catch (IOException ex)
{
}
finally
{
stm.Close();
}
return oMsg.HTMLBody;//oMsg里包含了邮件相关的所有信息
}
有关“cdosys.dll”模块可以到网上进一步了解,使用它可以方面的完成邮件的所有功能 --------------------编程问答-------------------- 楼上的太帅了 --------------------编程问答-------------------- "oMsg.DataSource.OpenObject(stm, "_stream"); //将EML数据流载入到CDO.Message,要做解析的话,后面就可以了。"
后面如何查找和替换发件人呢?
--------------------编程问答-------------------- 我也想知道。 --------------------编程问答-------------------- php 怎么解析能够在浏览器中显示?
补充:.NET技术 , C#