apache pop3 bufferedreader行以=(等于)结束

时间:2014-04-09 20:28:42

标签: javamail pop3

我尝试使用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

这是正常行为吗?有人能帮助我吗?

感谢

1 个答案:

答案 0 :(得分:1)

它不像你使用JavaMail那样声音。你不是,使用它,它会让你的生活更轻松。如果你是,请更详细地解释你在做什么。