import
javax.mail.Store;
import
javax.mail.
*
;
import
java.io.BufferedReader;
import
java.io.InputStreamReader;
import
java.io.
*
;
/**
*
* <p>Title: JavaMail</p>
* <p>Description:收取邮件 </p>
* <p>Copyright: Copyright (c) 2005</p>
*
@author
Derek.G
*
@version
1.0
* 收取邮件:
1.获取一个会话;
2.获取并连接邮箱所在的存储器(Store对象),打开该用户的邮箱;
3.获取所希望阅读的消息;
4.关闭目录和连接。
*/
public
class
ReadMail
extends
MailProcessBase{
//
初始化主机
String host
=
"
pop3.usish.com
"
;
String username
=
"
derek_g
"
;
String password
=
"
12140827
"
;
public
ReadMail()
throws
Exception {
super
();
}
public
void
readMail(){
try
{
//
获取Store对象,使用POP3协议,也可能使用IMAP
System.out.println(
"
获取Store对象
"
);
Store store
=
mailSession.getStore(
"
pop3
"
);
//
连接到邮件服务器
System.out.println(
"
连接到邮件服务器
"
);
store.connect(host, username, password);
//
获取该用户Folder对象,并以只读方式打开
System.out.println(
"
获取该用户Folder对象
"
);
Folder folder
=
store.getFolder(
"
INBOX
"
);
folder.open(Folder.READ_ONLY);
//
检索所有邮件,按需填充
System.out.println(
"
检索所有邮件
"
);
Message message[]
=
folder.getMessages();
//
遍历每一个邮件
System.out.println(
"
遍历每一个邮件
"
);
BufferedReader reader
=
new
BufferedReader(
new
InputStreamReader(System.in));
for
(
int
i
=
0
, n
=
message.length; i
<
n; i
++
) {
//
打印每个邮件的发件人和主题
System.out.println(i
+
"
:
"
+
message[i].getFrom()[
0
]
+
"
\t
"
+
message[i].getSubject());
//
是否读取该消息
System.out.println(
"
是否读取消息内容?
"
+
"
[YES读取 / QUIT结束]
"
);
String line
=
reader.readLine();
FileOutputStream fos
=
new
FileOutputStream(
"
c:\\mail.txt
"
);
if
(line.equals(
"
YES
"
)) {
message[i].writeTo(fos);
//
这种方式只能显示文本消息
System.out.println(message[i].getContent());
}
else
break
;
}
System.out.println(
"
收取邮件完毕!
"
);
folder.close(
false
);
store.close();
}
catch
(NoSuchProviderException ex) {ex.printStackTrace();}
catch
(MessagingException ex) {ex.printStackTrace();}
catch
(IOException ex) { ex.printStackTrace(); }
}
public
static
void
main(String[] args) {
try
{
new
ReadMail().readMail();
}
catch
(Exception ex) {ex.printStackTrace(); }
}
}
分享到:
相关推荐
### JavaMail收发Gmail邮件知识点详解 #### 一、JavaMail简介 JavaMail API是Java平台中的一个标准扩展库,用于发送、接收以及管理电子邮件。它提供了丰富的接口来实现邮件的各种操作,如构建复杂的MIME消息、处理...
发送邮件通常使用 SMTP (Simple Mail Transfer Protocol),而收取邮件则常用 POP3 (Post Office Protocol) 或 IMAP (Internet Message Access Protocol)。JavaMail 提供了对这些协议的支持,开发者可以通过配置 `...
JavaMail 是一个开源库,用于在Java应用程序中发送和接收电子邮件。它提供了丰富的API,使得开发者可以方便地处理复杂的邮件操作,包括添加附件、设置HTML内容等。在"javamail附件从流中获取"这个主题中,我们将深入...
- 收取邮件:连接到服务器上的特定`Folder`,使用`Folder`的`fetch()`方法获取邮件`Message`。 - 处理邮件:解析`Message`,提取并处理邮件内容。 7. **安全性和认证**: - JavaMail 支持多种安全协议,如SSL/...
System.out.println("纯文本邮件: " + bodyPart.getContent()); } else if (bodyPart.isMimeType("text/html")) { System.out.println("html邮件: " + bodyPart.getContent()); } else if (bodyPart.isMimeType...
它提供了读取和管理邮件存储的能力,如收取新的邮件、删除已读邮件等。主要的实现有`POP3Store`和`IMAPStore`,分别对应POP3和IMAP协议。 4. **Transport**: 负责将邮件发送到指定的邮件服务器。通过`javax.mail....
3. **POP3(Post Office Protocol version 3)** 和 **IMAP4(Internet Message Access Protocol version 4)**:JavaMail支持这两种常见的邮件接收协议,用户可以根据需求选择合适的协议来收取邮件。 4. **SMTP...
- 收取邮件:JavaMail同样支持收取邮件,通过Store对象连接到邮件服务器,然后打开Folder,读取Message。 4. **注意点**: - 安全性:使用JavaMail发送邮件时,确保传输过程是加密的,如使用SMTPS协议而非不安全...
值得注意的是,JavaMail还支持其他高级特性,如HTML格式的邮件、抄送和密送、邮件搜索、IMAP和POP3协议的邮件收取等。此外,为了确保邮件发送的安全性,现代应用通常会使用SSL/TLS加密连接,这在配置SMTP服务器时也...
JavaMail API 支持这两种协议,可以方便地实现邮件的收取。 4. **邮件格式与MIME**:邮件通常包含文本、附件等多种内容,MIME(多用途Internet邮件扩展)是一种标准,用于定义非ASCII字符和多种类型的数据(如图片...
2. **POP3(Post Office Protocol v3)和IMAP(Internet Message Access Protocol)支持**:除了发送邮件,JavaMail 还能处理接收邮件,支持POP3和IMAP这两种常见的邮件收取协议。 3. **多部分和MIME(Multipurpose...
- **JavaMail收取邮件属性配置**:展示了不同邮件服务提供商(如Gmail、Hotmail等)的配置属性。 - **JavaMail发送邮件**:一个名为`MailSender.java`的示例程序,用于发送邮件。 - **JavaMail收取邮件POP3**:演示...
没有这个库,JavaMail可能无法正确解析某些邮件附件,特别是那些需要特定处理(如图片、文档或音频文件)的非文本内容。 3. **集成与使用**: 在Java项目中使用JavaMail,你需要将这两个jar文件添加到项目的类路径...
首先,我们要知道Java中处理邮件的主要API是JavaMail API。这是一个开放源码的Java库,它提供了与SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)等邮件服务器交互的能力。JavaMail API...
以上代码中,我们定义了三个方法:`sendSimpleMail`用于发送纯文本邮件,`sendHtmlMail`用于发送HTML格式的邮件,而`sendEmailWithImageAndAttachment`则支持在邮件中嵌入图片和添加附件。 在实际应用中,你可以...
JavaMail API是Java平台上用于处理电子邮件的一套强大的库,它为开发者提供了丰富的接口和类,以便于发送、接收和管理邮件。在JavaMail API中,`mail.jar`和`activation.jar`是两个至关重要的组件。 `mail.jar`是...
2. 发送邮件:通过SMTP协议,JavaMail可以创建并发送MIME格式的邮件,包括文本、HTML、附件等。开发者可以自定义邮件主题、正文内容、收件人、抄送人等信息。 3. 接收邮件:利用POP3协议,JavaMail可以从邮件服务器...
使用 `Multipart` 类,JavaMail 可以轻松添加多个部分到一封邮件中,包括文本、图片、音频、视频等各种类型的附件。`MimeBodyPart` 用于表示邮件中的单个部分。 5. **邮件地址处理** `InternetAddress` 类处理...
JavaMail是Java编程语言中用于处理电子邮件的API,它提供了...开发者不仅可以学习如何发送简单的文本邮件,还能了解如何处理更复杂的邮件格式和协议。通过实践这些示例,可以提升在Java Web环境中处理电子邮件的能力。
使用JavaMail在Applet中收取邮件时,可能需要用户授权,或者使用HTTPS等安全连接方式。 E-mail口令验证是另一个安全性相关的功能。JavaMail支持SSL(Secure Sockets Layer)和TLS(Transport Layer Security)加密...