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时,注意安全性和性能优化,如及时关闭连接和避免内存泄漏。
在IT行业中,电子邮件的收发是一项基础且重要的功能,尤其对于开发者来说,了解如何通过编程方式实现邮件的发送和接收是非常必要的。在这个例子中,我们将深入探讨如何利用James服务器和JavaMail API来实现这一目标...
在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在邮件中包含多媒体内容,如图片、文档、音频或视频文件等。 在JavaMail中,`...
- 创建 MimeMessage 对象:这是邮件的核心,包含所有邮件内容,如主题、正文和附件。 - 添加收件人、抄送人和密送人:使用 `setRecipient()` 或 `addRecipient()` 方法。 - 设置邮件头:包括发件人、收件人、主题...
这个类称为 MailInfo,包含了邮件的各种信息,例如邮件服务器的主机名和端口号、邮件发送者的地址、邮件接收者的地址、邮件主题、邮件内容、邮件附件等。 在 MailInfo 类中,我们定义了多个成员变量,用于存储邮件...
javamail收发邮件(带附件,正文带图).doc
5. 附件处理:JavaMail 提供了 `MimeBodyPart` 类来处理邮件附件。通过创建 `MimeBodyPart`,设置 `DataHandler`,然后将其添加到 `MimeMultipart` 对象中,可以将附件添加到邮件中。 6. 联系人管理:虽然JavaMail...
JavaMail是一种广泛使用的Java库,用于在应用程序中发送和接收电子邮件。这个库提供了一套API,使得开发者可以方便地处理SMTP、POP3和IMAP等邮件协议。在JavaMail中发送带附件的邮件是一个常见的需求,尤其对于企业...
然后,你可以使用 Transport 类的 send 方法来发送 Message 对象,该对象包含了邮件的所有内容,如发件人、收件人、主题和正文。如果邮件有附件,可以通过 MimeMessage 类和 MimeBodyPart 类来添加。 对于邮件接收...
JavaMail的核心组件包括 javax.mail 和 javax.mail.internet 包,这两个包提供了邮件操作所需的所有接口和类。在JavaMail中,`Session`对象是邮件会话的代表,它是所有邮件操作的基础。开发者需要设置SMTP服务器的...
下面将详细介绍如何利用JavaMail发送文本、HTML和包含附件的邮件,以及在实际应用中需要注意的配置步骤。 1. **JavaMail的基本概念** - JavaMail API提供了一系列接口和类,允许开发者通过SMTP(Simple Mail ...
JavaMail 是一个强大的 Java 库,它允许开发者在应用程序中实现电子邮件的发送和接收功能。这个库支持多种邮件协议,如 SMTP(简单邮件传输协议)用于发送邮件,POP3(邮局协议)和 IMAP(因特网消息访问协议)用于...
8. **处理邮件**:遍历邮件数组,根据需要处理每封邮件的主题或其他属性。 ```java for (Message msg : msgs) { // 处理邮件的 Subject String subject = msg.getSubject(); // ... 其他操作 } ``` 9. **...
JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。这个资源提供了一个具体的示例,展示了如何使用JavaMail API 来发送带有附件的邮件。以下是对这个主题的详细解释: 首先,你需要理解...
6. **邮件处理**: `Message`对象提供了丰富的API来处理邮件内容,如提取发件人、主题、正文、附件等。对于HTML格式的邮件,可能需要解析HTML内容以提取有用信息。 7. **安全性和身份验证**: Exchange 2007支持多种...
4. **接收邮件**:通过`Store`和`Folder`接口连接到邮件服务器,打开并遍历邮箱中的邮件。`Message`对象可以获取邮件的所有详细信息,如发件人、收件人、日期、主题和内容。 5. **异常处理**:在开发过程中,应充分...
总之,基于JavaMail的邮件系统设计涉及到多方面的知识,包括邮件协议的理解、JavaMail API的使用、JSP技术的融合,以及系统架构和安全性的考量。通过这样的系统,开发者可以构建出高效、可移植的Web邮件应用,满足...
本教程将详细讲解如何使用JavaMail API在Gmail上发送邮件,包括不带附件和带有一个附件的情况。 首先,JavaMail是一个开源的Java库,它提供了用于处理邮件的标准API。在使用JavaMail发送邮件前,你需要在项目中引入...
6. **添加附件**:遍历附件列表并添加到邮件中。 7. **发送邮件**:通过 `Transport` 类发送邮件。 #### 四、注意事项 - **SMTP 授权码**:如果使用的是第三方 SMTP 服务(如 QQ 邮箱),通常需要使用专门的 SMTP ...
基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件收发系统.zip基于Javamail的邮件...