zoukankan      html  css  js  c++  java
  • [Domino]Java访问Domino邮件代码片断[4]下载某一封邮件中的指定附件

     

    [Domino]Java访问Domino邮件代码片断[4]

    编写者

    日期

    关键词

    郑昀@ultrapower

    2005-8-1

    Java Domino

     

    下载某一封邮件中的指定附件

    3个知识点:

    1:需要通过NoteID来定位该邮件:

    Database dbMail = sNotes.getDatabase(sNotes.getServerName(),

                          mailfile, false);

    Document doc = dbMail.getDocumentByID(noteid);

    2:其次需要通过attachment name来定位该附件:

    EmbeddedObject eAttach =

    (EmbeddedObject)doc.getAttachment(attachmentFileName);

    3:通过EmbeddedObjectextractFile方法下载附件。

    代码片段:

    Database dbMail = sNotes.getDatabase(sNotes.getServerName(),

                          mailfile, false);

    Document doc = dbMail.getDocumentByID(noteid);

    if (doc != null)

    {

           // Given the name of a file attachment, returns a NotesEmbeddedObject

           // representing the attachment. You can use this method to find file

           // attachments which are not contained in a rich text item

           // (such as an attachment in a Release 2 database),

           // as well as file attachments that are contained in a rich text item.

           EmbeddedObject eAttach =

           (EmbeddedObject)doc.getAttachment(attachmentFileName);

           // 查看附件

           if(eAttach != null)

           {

              logger.info("打开了指定邮件的指定附件");

          

              // 是否是我们要寻找的哪个附件?

              // 是的话,就保存下来

              String strAttachmentFileName =

                     eAttach.getSource();

          

              // Writes a file attachment to storag

              if(strAttachmentFileName.length() > 0)

                     eAttach.extractFile("c:\\" + strAttachmentFileName);

                    

              eAttach.recycle();

            }

    }

     

    这其中的attachmentFileName参数是通过EmbeddedObjectgetName方法拿到的:

    // getName returns a String value containing the name

    // used to reference an object that was embedded programmatically.

    String strAttachmentObjectName =

       eAttach.getName();

    而不是通过getSource()拿到的。当一封邮件中同时存在多个重名附件时,getName()getSource()就不一样了。

     

    编写者

    日期

    关键词

    郑昀@ultrapower

    2005-8-1

    Java Domino

     

  • 相关阅读:
    Android Hal 分析
    Android JNI 使用的数据结构JNINativeMethod详解
    MTK GPIO 一些理解
    DEVICE_ATTR
    DEVICE_ATTR
    内核驱动中常见的miscdevice、platform_device、platform_driver
    DEVICE_ATTR实例分析
    虚拟机安装Ubuntu14.04打开FireFox提示Server not found
    Android编译系统中的Kconfig,Makefile,.config编译系统浅析
    几款在线脑图制作工具
  • 原文地址:https://www.cnblogs.com/zhengyun_ustc/p/204968.html
Copyright © 2011-2022 走看看