`
wencan83
  • 浏览: 42241 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

可带附件的复杂邮件发送实例

阅读更多

Properties props = new Properties();

       props.setProperty("mail.transport.protocol", "smtp");

       props.setProperty("mail.smtp.auth", "true");

       props.setProperty("mail.host", "smtp.163.com");

       Session session = Session.getInstance(props,new Authenticator(){

 

           @Override

           protected PasswordAuthentication getPasswordAuthentication() {

              // TODO Auto-generated method stub

              return new PasswordAuthentication("aaaa","******");

           }

          

       });

       session.setDebug(true);

      

       Message msg = new MimeMessage(session);

       msg.setFrom(new InternetAddress("\""+MimeUtility.encodeText("小明")+"\" <aaaa@163.com>"));  //在邮件的发件人中显示中文

       msg.setSubject("复杂的邮件");

       msg.setRecipients(RecipientType.TO, InternetAddress.parse(bbb@sina.com,ccc@qq.com));

msg.setReplyTo(new Address[]{new InternetAddress("ccccc@qq.com")});   //回复时默认回复此地址

 

       Multipart msgMultipart = new MimeMultipart("mixed");    //邮件主体,是并列组合关系,因为附件和内容之间是并列的,这里不要用multipart/mixed

       msg.setContent(msgMultipart);

      

       MimeBodyPart attch1 = new MimeBodyPart();     //附件1

       MimeBodyPart attch2 = new MimeBodyPart();     //附件2

       MimeBodyPart htmlBody = new MimeBodyPart();      //主体内容

       msgMultipart.addBodyPart(attch1);

       msgMultipart.addBodyPart(attch2);

       msgMultipart.addBodyPart(htmlBody);

      

       DataSource ds1 = new FileDataSource("E:\\学习文件\\Java\\javamail\\JavaMail API简介().doc");       //附件1的文件

       DataHandler dh1 = new DataHandler(ds1);

       DataSource ds2 = new FileDataSource("E:\\学习文件\\Java\\javamail\\Java邮件发送实例.doc");    //附件2的文件

       DataHandler dh2 = new DataHandler(ds2);

      

       attch1.setDataHandler(dh1);

       attch2.setDataHandler(dh2);

       attch1.setFileName(MimeUtility.encodeText("JavaMail API简介().doc"));        //设置附件的文件名,不可少(有中文的要编码)

       attch2.setFileName(MimeUtility.encodeText("Java邮件发送实例.doc"));

      

       Multipart htmlPart = new MimeMultipart("related");      //主体内容里又包含多部分,是html和图片,它们的关系是依赖,这里不要用multipart/related

       htmlBody.setContent(htmlPart);

      

       MimeBodyPart contBody = new MimeBodyPart();          //主体内容里的html内容

       MimeBodyPart gifBody = new MimeBodyPart();           //主体内容里的图片内容

       htmlPart.addBodyPart(contBody);

       htmlPart.addBodyPart(gifBody);

      

       contBody.setContent("<span style='color:green;'>你好吗,朋友!</span><img src='http://www.wwc.com/邮件主体的组合关系.jpg'>", "text/html;charset=gbk");

       DataSource gifDS = new FileDataSource("E:\\学习文件\\Java\\javamail\\邮件主体的组合关系.jpg");

       DataHandler gifDH = new DataHandler(gifDS);

       gifBody.setDataHandler(gifDH);

       gifBody.setHeader("Content-Location", MimeUtility.encodeText("http://www.wwc.com/邮件主体的组合关系.jpg"));       //设置html部分引用的图片地址

      

       msg.saveChanges();          //把所有的内容保存在message

//     OutputStream msgFile = new FileOutputeam("E:\\学习文件\\Java\\javamail\\测试复杂邮件.eml");

//     msg.writeTo(msgFile);

//     msgFile.close();

      

       Transport.send(msg);

分享到:
评论

相关推荐

    PHP 发送邮件类,含实例(客发送附件)

    总的来说,`PHPMailer`为PHP开发者提供了一个强大且灵活的邮件发送解决方案,能够处理包括发送附件在内的各种复杂邮件需求。通过熟练掌握`PHPMailer`的使用,你可以提升网站的服务质量和用户体验。

    java发送邮件实例

    在这个实例中,我们将探讨如何使用Java来发送电子邮件,重点在于SMTP(Simple Mail Transfer Protocol)服务的使用。 首先,我们需要理解JavaMail API,这是一个Java库,允许开发者创建、发送和接收电子邮件。...

    vb 发送带附件的电子邮件

    在VB(Visual Basic)编程环境中,我们可以利用内置的`System.Net.Mail`命名空间来实现发送带附件的电子邮件功能。...这个功能对于初学者来说是一个很好的实践项目,同时也适用于需要自动化邮件发送的更复杂应用。

    自动发送不同联系人带附件邮件的outlook宏

    在IT领域,特别是办公自动化与企业通信管理方面,利用Outlook宏进行自动化邮件发送是一项高效且实用的技术。本文将深入探讨如何使用Outlook宏来实现向不同联系人发送带有特定附件的邮件,这一过程不仅提高了工作效率...

    多功能QQ邮件发送实例(C# 源码)

    本资源提供的"多功能QQ邮件发送实例(C# 源码)"是C#编程语言实现的一个实用工具,它允许开发者通过QQ邮箱服务器来发送邮件。下面我们将深入探讨这个实例涉及的关键知识点。 1. **SMTP协议**:SMTP(Simple Mail ...

    c#发送邮件实例(可以添加附件)

    本示例将深入探讨如何使用C#实现一个简单的邮件发送功能,包括添加附件。以下是一个详细的步骤和相关知识点: 1. **SMTP(Simple Mail Transfer Protocol)服务**:SMTP是互联网上用于发送电子邮件的标准协议。在C#...

    一个发送邮件附件实例

    以下是一个简单的Python代码实例,展示了如何使用`smtplib`和`email`库发送带有附件的邮件: ```python import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText ...

    asp.net发送邮件实例

    综上所述,ASP.NET 中的邮件发送是一个实用的功能,它可以通过简单的代码实现复杂的应用场景。通过学习并理解这一实例,开发者可以将其应用于各种项目模块中,提升用户体验并增强系统的交互性。

    poco库发送邮件的几个实例

    在邮件发送方面,Poco库提供了Net库中的MailMessage类和SMTPClientSession类,使得开发者能够方便地通过SMTP协议发送电子邮件,包括带有附件的邮件。 首先,我们需要了解SMTP(Simple Mail Transfer Protocol),这...

    javamail邮件发送实例

    JavaMail邮件发送实例是Java开发中常见的一个应用场景,主要用于实现程序自动发送电子邮件的功能。这个实例可以帮助开发者理解如何使用JavaMail API来构建邮件服务。在JavaMail API中,我们可以使用MimeMessage类...

    .net邮件发送实例

    本篇文章将深入讲解如何在.NET中利用JMail实现邮件发送,并结合提供的`WebApplication1`项目实例进行详细解析。 首先,我们要了解.NET中的邮件发送基础。在.NET Framework中,`System.Net.Mail`命名空间提供了`...

    delphi 调用 outlook 发送带附件的邮件

    通过深入理解COM接口和Outlook的API,你可以创建更复杂、更健壮的邮件发送功能。 在提供的压缩包文件中,"Delphi调用OutLook 发邮件"可能包含了具体的示例代码或者详细教程,你可以结合这些资源进一步学习和实践。...

    php邮件发送实例php邮件发送实例

    总结来说,通过使用PHP结合Sendmail和SMTP服务器,可以实现更复杂的邮件发送功能,包括HTML邮件、附件、身份验证和加密通信。开发者需要正确配置PHP的`sendmail_path`和Sendmail的`sendmail.ini`,并可能需要了解...

    Spring邮件发送实例

    以下是对Spring邮件发送实例的详细讲解。 首先,我们需要在项目中引入Spring Mail的相关依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.springframework.boot ...

    SMTP简单邮件发送开发实例.

    本实例将深入探讨如何利用SMTP进行简单的邮件发送开发。 一、SMTP工作原理 SMTP基于TCP/IP协议族,通常使用25号端口进行通信。邮件发送的过程分为以下几个步骤: 1. 客户端与SMTP服务器建立连接。 2. 客户端发送...

    邮件发送实例(源码)

    在本文中,我们将深入探讨如何使用C#编程语言发送电子邮件,这是基于提供的“邮件发送实例(源码)”的描述。这个实例适用于初学者,它使用了Visual Studio 2008作为开发环境。我们将详细讲解相关的C#知识点,以及...

    java实现发送邮件(普通邮件和带附件)功能

    总的来说,这个项目提供了关于如何在Java环境中利用JavaMail库发送邮件的实用示例,对于开发者来说,这是一个很好的学习资源,能够帮助他们快速理解和应用邮件发送功能。通过这个项目的源码,可以深入理解JavaMail的...

    利用JavaMail发送邮件的实例,可以直接运行

    这个实例将向我们展示如何使用JavaMail API在Java中实现邮件发送功能。以下是详细的步骤和相关知识点: 1. **JavaMail API简介**:JavaMail API是Java平台上的标准邮件服务接口,它提供了一系列类和接口,允许开发...

Global site tag (gtag.js) - Google Analytics