我尝试使用apache POP3邮件客户端从POP3邮件服务器接收一些邮件。
我使用BufferedReader从我的POP3邮件服务器( retreiveMessage(id))获取邮件。我有一些长行的邮件,我用下面的循环读它们。我的行被截断成几行,以等号(=)结尾,每行有76个字符加上=。
import org.apache.commons.net.pop3.POP3Client;
import org.apache.commons.net.pop3.POP3MessageInfo;
...
POP3Client pop = new POP3Client();
pop.setSocketFactory(SSLSocketFactory.getDefault());
pop.setDefaultTimeout(60000);
pop.connect(MAIL_SEREVR, PORT);
String username = USERNAME;
String password = PASSWORD;
isVerified = pop.login(username, password);
POP3MessageInfo[] messages = pop.listMessages();
for (POP3MessageInfo msginfo : messages) {
Date timestamp = new Date();
BufferedReader reader = (BufferedReader) pop
.retrieveMessage(msginfo.number);
if (reader == null) {
System.err.println("Could not retrieve message header.");
pop.disconnect();
System.exit(1);
}
try {
printMessageInfo(reader, msginfo.number, timestamp);
} catch (Exception e) {
e.printStackTrace();
}
pop.deleteMessage(msginfo.number);
}
pop.logout();
pop.disconnect();
所以,我打印消息,因为一个单词太长,它会被截断:
this is a short line, it is OK
andThisIsALongLineWithMoreThan76CharactersButThisIsEmpiricalIJustSeeThatThe=
LineIsTruncatedAtThe76thCHAR
这是正常行为吗?有人能帮助我吗?
感谢
答案 0 :(得分:1)
它不像你使用JavaMail那样声音。你不是,使用它,它会让你的生活更轻松。如果你是,请更详细地解释你在做什么。