⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mailcomplex.java~59~

📁 Mail Of Java
💻 JAVA~59~
字号:
package mailofjava;/** 本程序演示以下内容 1  message的标志演示 2  如何删除邮件 3 如何在服务器端搜索出符合条件的邮件 4 接收附件并存在硬盘上 */import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;import javax.mail.Flags.*;import javax.mail.*;import javax.mail.internet.*;import javax.activation.*;import java.io.*;public class MailComplex  extends JFrame  {   Message[]  msg;   Message msga;   Flags flg;   Stack  attachedFiles;//放文件名  JLabel jl;   Icon iic;  Image img;  Container ct;  public MailComplex() {    super("ok");    ct = this.getContentPane() ;    attachedFiles = new Stack();    CreateMessage cm=new CreateMessage(1);//取得数据    msg=cm.getMessage() ;    msga=msg[0];//只处理一个邮件,如果有附件的话,处理第一个图形附件 try{    if(!msga.isMimeType("multipart/mixed") ){       System.err.println("错误,本程序只接收带附件图片的邮件,请重新发送") ;      System.exit(0);    }// 判断是不是有附件    attachHandle();//处理附件    this.showAttachedFileName() ; /*   if(msga.isSet(Flags.Flag.DELETED ))//其它标记不支持的      System.out.println("mail 0:deleted");   else      System.out.println("mail 0:okay");     msga.setFlag(Flags.Flag.DELETED ,true);//删除标记      System.out.println("mail 0:deleted");//请用foxmail远程功能检查是否删除*/    } catch(Exception e){ System.out.print("意外:不能处理删除");System.exit(1); };}//构造public void attachHandle(){try{  Multipart mp1 =(Multipart ) msga.getContent() ;  for(int i=0;i<mp1.getCount() ;i++){     BodyPart bp1= mp1.getBodyPart(i) ;//只处理第一级附件,附件不处理     System.err.println("取出第"+i+"部份,类型"+bp1.getContentType()) ;     if(bp1.isMimeType("image/*") ){//如果是图像就存个盘         String disposition= bp1.getDisposition() ;         if(disposition!=null  &&  (disposition.equals(Part.ATTACHMENT) || disposition.equals(Part.INLINE )))         {           String name= bp1.getFileName();           attachedFiles.push(name);//压入           FileOutputStream fos=new FileOutputStream( name);//新建文件存在documentbase上           BufferedInputStream in = new BufferedInputStream(bp1.getInputStream() );           int c;           while((c=in.read() )!=-1)//直接用writeto什么东西也没有              fos.write(c);            in.close() ;            fos.close() ;            fos=null;         }//dispostion如果是可以存盘的附件     }//if(bp1.isMimeType("image/*")  }//for }catch(Exception e){ e.printStackTrace() ;};}//attachHandlepublic void showAttachedFileName(){  Enumeration enum = attachedFiles.elements() ;  while(enum.hasMoreElements() )    System.err.println("附件: "+ enum.nextElement() );  String myname;  myname=(String) attachedFiles.pop() ;//取出一个附件  iic=new ImageIcon(myname); //  iic=new ImageIcon("yp.jpg");  jl=new JLabel("ok",iic,SwingConstants.LEFT );  ct.add(jl);}//显示  public static void main(String[] args) {    MailComplex mailComplex1 = new MailComplex();    mailComplex1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );  mailComplex1.setSize(400,200);   mailComplex1.setVisible(true);  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -