发送一封HTML格式的邮件消息

实际工作当中,我们会发现如果仅仅是发送一封纯文本的邮件,是完全不能满足客户的需要的。不过绝大多数的电子邮件处理程序都提供了一种方法来对文本的字体和颜色等进行更改,甚至有些还可以在一则邮件消息的正文中嵌入图片。典型的做法就是将这则邮件消息作为HTML来发送。下面我们就要来学习如何使用ASP.NET程序来处理发送一封HTML格式的邮件。

  MailMessage对象也支持发送HTML格式的电子邮件。利用这种功能,我们可以以一种比标准文本消息格式更好,更加动态的方式来发送邮件消息。

  下面的示例中,ASP.NET页面将用来给访问者发送一个产品有关的资料。但这里并不是仅仅将这个产品的资料作为纯文本来发送,而是使用了一些HTML元素对这则邮件消息进行格式化。

  在这个页面的表单内,定义了一个TextBox控件,用于输入访问者的Email地址:
<asp:TextBox id="txtToEmail" runat="server" />

  以及一个用来提交本页面的Button控件:
<asp:button id="btnOK" runat="server" text="Send" type="Submit" OnClick="SubmitBtn_Click" />

  当点击这个Button按钮时,针触发下列这段代码:
  Sub SubmitBtn_Click(Sender As Object, E As EventArgs)
   Dim TheMailMessage as New MailMessage
   Dim TheMailConnection as SmtpMail
   TheMailMessage.From = “test@webpdo.com”
   TheMailMessage.To = txtToEmail.Text
   TheMailMessage.Subject = "测试发送HTML格式的邮件"
   //邮件正文内容
   Dim TheMessage as String
   The Message = "<HTML><BODY>" _
    & "<B>产品名称:</B> 运动鞋 <BR>" _
    & "<B>描述:</B> 这双鞋是名牌,质量可靠,颜色明亮 <BR>" _
    & "<B>价格:</B> 366元 <BR><BR>" _
    & "</BODY></HTML>"
   //设置邮件正文
   TheMailMessage.Body = TheMessage
   //这步是发送HTML格式邮件的关键,设置邮件的格式
   TheMailMessage.BodyFormat = MailFormat.Html
   //发送邮件
   TheMailConnection.Send(TheMailMessage)
  End Sub

  这样就可以很简单的发送一封HTML格式的邮件了。在这里需要注意,这则邮件消息的正文实际上是一个Web页面的内容。我们可以在这里放置任何HTML元素。如果我们需要在邮件正文是放置一幅图片,那么我们只需要在邮件正文中加入<IMG>元素就可以了。不过图片的SRC属性必须设置为绝对路径,比如http://www.webpdo.com/images/logo.jpg。

  接下来,还需要注意BodyFormat属性,如果不把它设置为MailFormat.Html,这则消息仅会作为纯文本消息发送出去了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
发送 HTML 格式邮件,需要使用 JavaMail API 中的 MimeMessage 和 MimeMultipart 类。下面是一个简单的样例代码: ```java import java.util.Properties; import javax.mail.*; import javax.mail.internet.*; public class SendHtmlEmail { public static void main(String[] args) { String to = "recipient@example.com"; // 收件人邮件地址 String from = "sender@example.com"; // 发件人邮件地址 String host = "smtp.example.com"; // SMTP 服务器地址 // 设置邮件会话的属性 Properties properties = System.getProperties(); properties.setProperty("mail.smtp.host", host); // 获取默认的 Session 对象 Session session = Session.getDefaultInstance(properties); try { // 创建一个默认的 MimeMessage 对象 MimeMessage message = new MimeMessage(session); // 设置 From: 头部头字段 message.setFrom(new InternetAddress(from)); // 设置 To: 头部头字段 message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); // 设置邮件主题 message.setSubject("HTML 邮件"); // 创建一个 Multipart 消息对象 Multipart multipart = new MimeMultipart(); // 创建一个 MimeBodyPart 对象,包含 HTML 内容 BodyPart htmlBodyPart = new MimeBodyPart(); String htmlContent = "<h1>这是一封 HTML 邮件</h1><p>这是邮件的正文内容。</p>"; htmlBodyPart.setContent(htmlContent, "text/html"); // 将 HTML 内容添加到 Multipart 消息对象中 multipart.addBodyPart(htmlBodyPart); // 将 Multipart 消息对象设置为邮件内容 message.setContent(multipart); // 发送邮件 Transport.send(message); System.out.println("邮件发送。"); } catch (MessagingException mex) { mex.printStackTrace(); } } } ``` 在上面的代码中,我们首先设置了邮件会话的属性,包括 SMTP 服务器地址。然后获取默认的 Session 对象。 接着,创建一个 MimeMessage 对象,并设置发件人、收件人和邮件主题。我们还创建了一个 Multipart 消息对象,并将 HTML 内容添加到其中。最后,将 Multipart 消息对象设置为邮件内容,并发送邮件。 需要注意的是,发送邮件的过程可能需要进行身份验证。如果需要身份验证,可以通过设置 Session 对象的属性来指定身份验证相关的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值