请问c#怎么读取eml文件及其附件??
麻烦大家提供思路或者代码示例!!

解决方案 »

  1.   

    给你贴个例子,能用的加分啊,要注意的是MailMessage引用的命名空间啊,命名空间不同,引用的对象就不同,写法也就不同啊,切记!!!!!
    EG:
    <%@ page Language = "C#" debug = "true" Explicit="True" %>
    <%@ Import Namespace = "System.Web.Util" %>
    <%@ Import Namespace = "System.Web.Mail" %>
    <script language = "C#" runat = "server">public void SendMail (Object Obj, EventArgs E) {
    labelSendMailResult.Text = "";
    if (Page.IsValid) {
    MailMessage mailObj = new MailMessage();// 设置email的'from'和'to'的地址
    mailObj.From = inputMailFrom.Value;
    mailObj.To = inputMailTo.Value;mailObj.Subject = inputMailSubject.Value;
    mailObj.Body = textBoxMailBody.Text;// 可选: 使用html格式的Email
    mailObj.BodyFormat = MailFormat.Html;// 可选: 对邮件进行加密
    // mailObj.BodyEncoding = MailFormat.Base64;// 可选: 设置邮件的优先级别为高
    mailObj.Priority = MailPriority.High;// 可选: 附件
    if (inputMailAttachment.PostedFile.ContentLength > 0) {
    // 注意这里我们创建了一个MailAttachment对象来附加一个文件到email。
    mailObj.Attachments.Add(new MailAttachment(inputMailAttachment.PostedFile.FileName));
    }// 使用SmtpMail对象来发送邮件。
    SmtpMail.Send(mailObj);
    labelSendMailResult.Text = "邮件发送成功 From: " + inputMailFrom.Value + "; To: " + inputMailTo.Value;
    if (inputMailAttachment.PostedFile.ContentLength > 0) {
    labelSendMailResult.Text += "<br>该邮件包含附件: " + inputMailAttachment.PostedFile.FileName + ", 附件大小为: " + (inputMailAttachment.PostedFile.ContentLength / 1024).ToString() + " K Byte(s)";
    }
    }
    }
    </script>
    <html>
    <head>
    <title>
    发送邮件 ASP.NET</title>
    </head>
    <body>
    <div align="center">
    <table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#eeeeee" id="AutoNumber1">
    <form id="formMail" method="post" action="" enctype="multipart/form-data" runat="server">
    <tr>
    <td width="20%" height="24">收件人地址: </td>
    <td width="80%" height="24">
    <input type="text" id="inputMailTo" name="inputMailTo" runat="server" size="48">
    <asp:RequiredFieldValidator
    id="RequiredFieldValidatorInputMailTo"
    ControlToValidate="inputMailTo"
    Display="Static"
    EnableClientScript="False"
    ErrorMessage="收件人不能为空"
    runat="server"/>
    <asp:RegularExpressionValidator id="RegularExpressionValidatorInputMailTo" 
    ControlToValidate="inputMailTo"
    ValidationExpression="^[\w\.-]+@[\w\.-]+\.[a-zA-Z]+$"
    Display="Static"
    EnableClientScript="false"
    ErrorMessage="收件人邮件地址错误"
    runat="server"/>
    </td>
    </tr>
    <tr>
    <td width="20%" height="24">发件人地址: </td>
    <td width="80%" height="24">
    <input type="text" id="inputMailFrom" name="inputMailFrom" runat="server" size="48">
    <asp:RequiredFieldValidator
    id="RequiredFieldValidatorInputMailFrom"
    ControlToValidate="inputMailFrom"
    Display="Static"
    EnableClientScript="False"
    ErrorMessage="发件人不能为空"
    runat="server"/>
    <asp:RegularExpressionValidator id="RegularExpressionValidatorInputMailFrom" 
    ControlToValidate="inputMailFrom"
    ValidationExpression="^[\w\.-]+@[\w\.-]+\.[a-zA-Z]+$"
    Display="Static"
    EnableClientScript="false"
    ErrorMessage="发件人邮件地址错误"
    runat="server"/>
    </td>
    </tr>
    <tr>
    <td width="20%" height="24">邮件主题: </td>
    <td width="80%" height="24">
    <input type="text" id="inputMailSubject" name="inputMailSubject" runat="server" size="48">
    <asp:RequiredFieldValidator
    id="RequiredFieldValidatorInputMailSubject"
    ControlToValidate="inputMailSubject"
    Display="Static"
    EnableClientScript="False"
    ErrorMessage="邮件主题不能为空"
    runat="server"/>
    </td>
    </tr>
    <tr>
    <td width="20%" height="24">邮件内容:
    </td>
    <td width="80%" height="24">
    <asp:TextBox id="textBoxMailBody" name="textBoxMailBody" runat="server" Rows="6" Cols="48" TextMode="MultiLine" />
    <asp:RequiredFieldValidator
    id="RequiredFieldValidatorTextBoxMailBody"
    ControlToValidate="textBoxMailBody"
    Display="Static"
    EnableClientScript="False"
    ErrorMessage="邮件内容不能为空"
    runat="server"/>
    </td>
    </tr>
    <tr>
    <td width="20%" height="24">邮件附件:
    </td>
    <td width="80%" height="24">
    <input type="file" id="inputMailAttachment" name="inputMailAttachment" runat="server" size="48">
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center">
    <input type="button" value="Send Mail" OnServerClick="SendMail" id="buttonSendMail" name="buttonSendMail" runat="server">
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center" height="24">
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center">
    <asp:Label id="labelSendMailResult" runat="server" text="" font-bold="True" forecolor="#FF0000"/>
    </td>
    </tr>
    </form>
    </table>
    </div>
    </body>
    </html>
      

  2.   

    http://zhidao.baidu.com/question/95199263.html
    LOOK~~
      

  3.   

    http://www.51aspx.com/CV/JmailSend/你下载下来看看....