`
qq2511296
  • 浏览: 11134 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JavaMail 移动邮件到其他目录

阅读更多
public static void main(String[] args) throws MessagingException, IOException {
    	 String imapserver = "******"; // 邮件服务器
         String user = "*****";
         String pwd = "****";     // 根据自已的密码修改
             // 获取默认会话
             Properties prop = System.getProperties();
             prop.put("mail.imap.host",imapserver);
            // prop.put("mail.imap.auth.plain.disable","true");
             Session mailsession=Session.getInstance(prop,null);
             mailsession.setDebug(false); //是否启用debug模式
             IMAPFolder folder= null;
             IMAPFolder tobedeterminedFolder=null;
             IMAPStore store=null;
             int total= 0;
             try{
                store=(IMAPStore)mailsession.getStore("imap");  // 使用imap会话机制,连接服务器
                store.connect(imapserver,user,pwd);
                folder=(IMAPFolder)store.getFolder("INBOX"); //收件箱 
                folder.open(Folder.READ_WRITE);
               
                Message[] msgs =folder.getMessages();
                //获取总邮件数
                total = folder.getMessageCount();
                System.out.println("-----------------您的邮箱共有邮件:" + total+" 封--------------");
                // 得到收件箱文件夹信息,获取邮件列表
                System.out.println("\t收件箱的总邮件数:" + msgs.length);  
                System.out.println("\t未读邮件数:" + folder.getUnreadMessageCount());  
                System.out.println("\t新邮件数:" + folder.getNewMessageCount());  
                System.out.println("----------------End------------------");
                //注意下面这里是通过folder.getFolder("folderName");
                //用store.getFolder("folderName");我这邮箱测试不通过
                //TO-BE-DETERMINED这个文件夹是我自己建立的
                //文件夹目录结构如下:
                //INOBX
                //--Spam
                //--Drafts
                //--TO-BE-DETERMINED
                //--Trash
                //--Sent
                tobedeterminedFolder= (IMAPFolder) folder.getFolder("TO-BE-DETERMINED");
                //只测试移动一封邮件到其他目录
                for (Message message2 : msgs) {
            		System.out.println("message Folder:"+message2.getFolder().getName());
                	folder.copyMessages(new Message[]{message2}, tobedeterminedFolder);
            		message2.setFlag(Flags.Flag.DELETED, true);
                	break;
                	
                }
               
             }
             catch(MessagingException ex){
                  ex.printStackTrace();
             }finally {
            	 // 释放资源
               try{
            	   if(tobedeterminedFolder!=null && tobedeterminedFolder.isOpen()){
            		   tobedeterminedFolder.close(true);
            		   System.out.println("close....");
            	   }
                   if(folder!=null && folder.isOpen()){
                       folder.close(true); 
                   }
                  if (store != null){
                     store.close();
                  }
                 }catch(Exception bs){
                  bs.printStackTrace();
                 }             
             }     
       
    }

 

分享到:
评论

相关推荐

    使用Java发送邮件(JavaMail的使用)

    POP协议允许电子邮件客户端下载服务器上的邮件,但是在电子邮件客户端的操作(如:移动邮件、标记已读等),不会反馈到服务器上。 IMAP协议允许电子邮件客户端下载服务器上的邮件,电子邮件客户端的操作都会反馈到...

    基于Javamail的邮件收发系统(系统+论文+开题报告+任务书+外文翻译+文献综述+答辩PPT).rar

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、...

    基于javamail开发的Android邮件客户端.zip

    Android是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的移动操作系统,主要应用于移动设备,如智能手机和平板电脑。该系统最初由安迪·鲁宾开发,后被Google公司收购并注资,随后与多家硬件制造商、软件...

    基于Android的手机邮件系统

    简单的邮件收发系统,界面简单。内容相对比较简单。

    Java实现发送邮件功能时碰到的坑

    之前用163邮箱发邮件时明明是成功的,但是使用中国移动自己的邮箱时,无论如何在linux服务器中都发送不成功。下面小编给大家说下我是怎么解决的,一起看下吧

    emailkit:适用于Android的EmailKit-这是一个功能强大,出色且简单的电子邮件框架:love_letter:

    目前EmailKit支持的电子邮件协议有SMTP和IMAP,它支持的功能有发送邮件,下载附件、获取文件夹列表、读取邮件、加载邮件、同步邮件,对邮件消息的移动,删除,保存到草稿箱等操作,同时支持邮箱的新邮件消息推送...

    Java实现邮件客户端JAR包

    课程设计时用NetBeans写的一个Java邮件客户端,直接点击运行EmailClient.jar,其它的文件不要随便移动。 这只是各JAR包形式的程序,具体源程序以后在发上来,若有疑问可请发邮件告知(在内)。

    jsp网络编程从基础到实践

    《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web开发基础 实例2 HTML与JavaScript交互...

    JSP网络编程从基础到实践的实例代码

    JSP网络编程从基础到实践的实例代码 《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web...

    JSP网络编程从基础到实践 实例代码

    《JSP网络编程从基础到实践》光盘说明 光盘的实例代码目录中包含了前10章的所有实例的源代码,实例名称及其所处章节如下: 第1章 JSP技术概述 实例1 第一个JSP页面 第3章 Web开发基础 实例2 HTML与JavaScript交互...

    JSP网络编程从基础到实践

    实例63 用servlet获取表单数据 实例64 用servlet读写文件数据 实例65 用servlet访问数据库 实例66 一个简单的struts应用实例——用户登录 JSP中的JavaMail开发 实例67 发送文本格式的邮件 ...

    SpringBoot2+Mail邮件发送系统(邮箱专题)

    它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的...

    Java数据库编程宝典2

    4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...

    Java数据库编程宝典4

    4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...

    Java数据库编程宝典1

    4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...

    Java数据库编程宝典3

    4.12.3 将游标移动到指定行 4.12.4 获得游标位置 4.13 可更新的ResultSet 4.13.1 更新ResultSet 4.13.2 插入一新行 4.13.3 删除行 4.14 观察ResultSet中的变化 4.15 RowSet对象 4.16 创建RowSet和设置属性 ...

    spring-web-rss-channels:使用Spring MVC和JSP构建的全栈RSS阅读器Web应用程序。 它使用诸如Spring,JPA,Bootstrap,Apache Tiles,JSP等库。还有一个称为Checkstyle的静态代码分析工具

    JavaMail API提供了独立于平台和协议的框架来构建邮件和消息传递应用程序。 运行应用程序 在Windows上 # # Build application from base directory using Maven Wrapper mvnw.cmd clean install # # Run tomcat7 ...

Global site tag (gtag.js) - Google Analytics