`
dengyin2000
  • 浏览: 1228438 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

javamail遍历的方式拿到邮件的正文和所有附件

 
阅读更多
                        try {
                            Object content = message.getContent();
                            if (content instanceof String) {
                                Log.v("Content", content.toString());
                            }else {
                                Multipart mp = (Multipart) content;
                                for (int i = 0; i < mp.getCount(); i++) {
                                    BodyPart bodyPart = mp.getBodyPart(i);
                                    iteratorAttachment(bodyPart);
                                }
                            }
                        } catch (IOException e) {
                            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
                        }


   private void iteratorAttachment(Part p) throws
            MessagingException, IOException {
        if (p.isMimeType("text/*")) {
            String s = (String)p.getContent();
            boolean textIsHtml = p.isMimeType("text/html");
            //正文
            return ;
        }
        String disposition = p.getDisposition();
        if ((disposition != null) &&
                ((disposition.equals(Part.ATTACHMENT) ||
                        (disposition.equals(Part.INLINE))))) {
            //附件
            // part.getFileName(), part.getInputStream()
            return ;
        }

        if (p.isMimeType("multipart/alternative")) {
            // prefer html text over plain text
            Multipart mp = (Multipart)p.getContent();

            for (int i = 0; i < mp.getCount(); i++) {
                Part bp = mp.getBodyPart(i);
                iteratorAttachment(bp);
            }
        } else if (p.isMimeType("multipart/*")) {
            Multipart mp = (Multipart)p.getContent();
            for (int i = 0; i < mp.getCount(); i++) {
                iteratorAttachment(mp.getBodyPart(i));
            }
        }
    }
分享到:
评论

相关推荐

    javamail收取邮件(包括附件)

    JavaMail 是一个强大的开源库,...通过配置邮件服务器的相关参数,连接到服务器,然后打开邮箱并遍历邮件,可以方便地获取邮件信息和附件。在使用JavaMail时,注意安全性和性能优化,如及时关闭连接和避免内存泄漏。

    james和javamail实现邮件收发(带发送附件)

    在IT行业中,电子邮件的收发是一项基础且重要的功能,尤其对于开发者来说,了解如何通过编程方式实现邮件的发送和接收是非常必要的。在这个例子中,我们将深入探讨如何利用James服务器和JavaMail API来实现这一目标...

    JavaMail(3)——发送带附件的邮件.docx

    在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在邮件中包含多媒体内容,如图片、文档、音频或视频文件等。 在JavaMail中,`...

    javamail 回执邮件资料

    - 创建 MimeMessage 对象:这是邮件的核心,包含所有邮件内容,如主题、正文和附件。 - 添加收件人、抄送人和密送人:使用 `setRecipient()` 或 `addRecipient()` 方法。 - 设置邮件头:包括发件人、收件人、主题...

    使用JAVAMail代发邮件

    这个类称为 MailInfo,包含了邮件的各种信息,例如邮件服务器的主机名和端口号、邮件发送者的地址、邮件接收者的地址、邮件主题、邮件内容、邮件附件等。 在 MailInfo 类中,我们定义了多个成员变量,用于存储邮件...

    javamail收发邮件(带附件,正文带图).doc

    javamail收发邮件(带附件,正文带图).doc

    javamail 收发电子邮件

    5. 附件处理:JavaMail 提供了 `MimeBodyPart` 类来处理邮件附件。通过创建 `MimeBodyPart`,设置 `DataHandler`,然后将其添加到 `MimeMultipart` 对象中,可以将附件添加到邮件中。 6. 联系人管理:虽然JavaMail...

    JavaMail发送带附件的邮件

    JavaMail是一种广泛使用的Java库,用于在应用程序中发送和接收电子邮件。这个库提供了一套API,使得开发者可以方便地处理SMTP、POP3和IMAP等邮件协议。在JavaMail中发送带附件的邮件是一个常见的需求,尤其对于企业...

    javamail(带界面的javamail)

    然后,你可以使用 Transport 类的 send 方法来发送 Message 对象,该对象包含了邮件的所有内容,如发件人、收件人、主题和正文。如果邮件有附件,可以通过 MimeMessage 类和 MimeBodyPart 类来添加。 对于邮件接收...

    JavaMail邮件的上传和下载

    JavaMail的核心组件包括 javax.mail 和 javax.mail.internet 包,这两个包提供了邮件操作所需的所有接口和类。在JavaMail中,`Session`对象是邮件会话的代表,它是所有邮件操作的基础。开发者需要设置SMTP服务器的...

    JavaMail发送邮件(文本、html、附件)

    下面将详细介绍如何利用JavaMail发送文本、HTML和包含附件的邮件,以及在实际应用中需要注意的配置步骤。 1. **JavaMail的基本概念** - JavaMail API提供了一系列接口和类,允许开发者通过SMTP(Simple Mail ...

    使用javaMail发邮件及收取邮箱未读邮件并标记为已读

    JavaMail 是一个强大的 Java 库,它允许开发者在应用程序中实现电子邮件的发送和接收功能。这个库支持多种邮件协议,如 SMTP(简单邮件传输协议)用于发送邮件,POP3(邮局协议)和 IMAP(因特网消息访问协议)用于...

    怎么用JavaMail收取邮件

    8. **处理邮件**:遍历邮件数组,根据需要处理每封邮件的主题或其他属性。 ```java for (Message msg : msgs) { // 处理邮件的 Subject String subject = msg.getSubject(); // ... 其他操作 } ``` 9. **...

    javamail发送邮件(带附件)

    JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。这个资源提供了一个具体的示例,展示了如何使用JavaMail API 来发送带有附件的邮件。以下是对这个主题的详细解释: 首先,你需要理解...

    javamail通过imap协议收取邮件(Exchange2007)

    6. **邮件处理**: `Message`对象提供了丰富的API来处理邮件内容,如提取发件人、主题、正文、附件等。对于HTML格式的邮件,可能需要解析HTML内容以提取有用信息。 7. **安全性和身份验证**: Exchange 2007支持多种...

    基于Javamail的邮件收发系统

    4. **接收邮件**:通过`Store`和`Folder`接口连接到邮件服务器,打开并遍历邮箱中的邮件。`Message`对象可以获取邮件的所有详细信息,如发件人、收件人、日期、主题和内容。 5. **异常处理**:在开发过程中,应充分...

    基于JavaMail邮件系统的设计与实现 论文

    总之,基于JavaMail的邮件系统设计涉及到多方面的知识,包括邮件协议的理解、JavaMail API的使用、JSP技术的融合,以及系统架构和安全性的考量。通过这样的系统,开发者可以构建出高效、可移植的Web邮件应用,满足...

    Gmail邮件通过JavaMail发送(不带附件与带一个附件)

    本教程将详细讲解如何使用JavaMail API在Gmail上发送邮件,包括不带附件和带有一个附件的情况。 首先,JavaMail是一个开源的Java库,它提供了用于处理邮件的标准API。在使用JavaMail发送邮件前,你需要在项目中引入...

    javamail收发邮件(带附件,正文带图).docx

    6. **添加附件**:遍历附件列表并添加到邮件中。 7. **发送邮件**:通过 `Transport` 类发送邮件。 #### 四、注意事项 - **SMTP 授权码**:如果使用的是第三方 SMTP 服务(如 QQ 邮箱),通常需要使用专门的 SMTP ...

    基于Javamail的邮件收发系统.zip

    基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件...

Global site tag (gtag.js) - Google Analytics