图片作为附件存储下来,然后在邮件正文中将图片的id替换为
<img src="path">其中的path为图片存储的路径

解决方案 »

  1.   

    private static void analyseMultipart(Multipart mpart,Map mailBodyMap){
      try{
           int count = mpart.getCount();
           for(int i=0;i<count;i++){
             Part part = mpart.getBodyPart(i);
             if(part.isMimeType("multipart/*")){
               analyseMultipart((Multipart)part.getContent(),mailBodyMap);
             }else{
               if(part.isMimeType("TEXT/*")){
                 //文本
                 if(part.getFileName()==null){
                   if(part.isMimeType("TEXT/PLAIN")){                 相关处理;               }
                   if(part.isMimeType("TEXT/HTML")){                 相关处理               }
                 }else{
                   //文本附件
                                  String filename = MimeUtility.decodeText(part.getFileName());
                  
                  saveFile(part.getInputStream(),filename);
                 }
               }else{
                 //二进制文件
                 String disp = part.getDisposition();
                 String contentId = ((MimePart)part).getContentID();
                 if (disp != null && disp.equalsIgnoreCase(Part.ATTACHMENT)){
                   //二进制附件
                   String filename = MimeUtility.decodeText(part.getFileName());
                  saveFile(part.getInputStream(),filename);             }else if(contentId!=null){
    //***********************************************************************
    //在此得到超文本正文中的图片
                                                 String filename = MimeUtility.decodeText(part.getFileName());
                   if(filename!=null){
                    saveFile(part.getInputStream(),filename);//保存图片,
    //同时还要保存图片id,即contentId,以便于用图片路径替换正文中的图片id
    //具体存储看你的数据结构或这数据库了,我这力没有相关实现
                   }
                               }
               }
             }
           }
         }catch(Exception e){
           e.printStackTrace();
         }
      }
      

  2.   

    stonecsdn(东东)  和你差不多的,原先一个地方写错了,所以图片没读出来。多了一个限制判断条件,所以没读出来。看你回答这么认真,分数就给你拉