zoukankan      html  css  js  c++  java
  • java mail 读取邮件列表,

            // 准备连接服务器的会话信息
            Properties props = new Properties();
            props.setProperty("mail.store.protocol", "imap");
            props.setProperty("mail.imap.host", "imap.163.com");
            props.setProperty("mail.imap.port", "143");
    
            // 创建Session实例对象
            Session session = Session.getInstance(props);
    
            // 创建IMAP协议的Store对象
            Store store = session.getStore("imap");
    
            // 连接邮件服务器
            store.connect("186*******", "111111");
    
            // 获得收件箱
            Folder folder = store.getFolder("INBOX");
            // 以读写模式打开收件箱
            folder.open(Folder.READ_WRITE);
    
            // 获得收件箱的邮件列表
            Message[] messages = folder.getMessages();
    
            // 打印不同状态的邮件数量
            System.out.println("收件箱中共" + messages.length + "封邮件!");
            System.out.println("收件箱中共" + folder.getUnreadMessageCount() + "封未读邮件!");
            System.out.println("收件箱中共" + folder.getNewMessageCount() + "封新邮件!");
            System.out.println("收件箱中共" + folder.getDeletedMessageCount() + "封已删除邮件!");
    
            System.out.println("------------------------开始解析邮件----------------------------------");
    
            // 解析邮件
            for (Message message : messages) {
                IMAPMessage msg = (IMAPMessage) message;
                msg.setFlag(Flags.Flag.SEEN, true);
    //            String subject = MimeUtility.decodeText(msg.getSubject());
    //            System.out.println("[" + subject + "]未读,是否需要阅读此邮件(yes/no)?");
    //            BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    //            String answer = reader.readLine();   //www.2cto.com
    //            if ("yes".equalsIgnoreCase(answer)) {
    ////                POP3ReceiveMailTest.parseMessage(msg);  // 解析邮件
    //                // 第二个参数如果设置为true,则将修改反馈给服务器。false则不反馈给服务器
    //                msg.setFlag(Flags.Flag.SEEN, true);   //设置已读标志
    //            }
            }
    
            // 关闭资源
            folder.close(false);
            store.close();

    pop3是不可以更改邮件状态的,

    所以改用imap协议

  • 相关阅读:
    Spring学习(1):侵入式与非侵入式,轻量级与重量级
    集群结构、分布式结构、单机结构
    使用Idea工具创建Maven WebApp项目
    文件上传:CommonsMultipartResolver
    Memcached
    Window下部署MySql数据库
    HashCode详解
    JDK源码分析:Object.java
    二进制运算
    关于打印日志几个方法的列举
  • 原文地址:https://www.cnblogs.com/lvlv/p/5909437.html
Copyright © 2011-2022 走看看