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

news/2024/5/19 20:45:25

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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 




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

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 

得到用户收件箱中的邮件

三个知识点:

1:如果是打开mailfile数据库后直接

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

                      mailfile, false);

DocumentCollection dc = dbMail.getAllDocuments();

Document doc = dc.getFirstDocument();

这样打开的是用户邮箱数据库中全部邮件。

如果是选择了$Inbox视图,才会只浏览收件箱中的所有邮件,如下面的代码所示。

2:程序模拟用户身份访问邮箱,其中的所有邮件都会是新邮件,除非自己做标记。

3:关于邮件的日期,最好“delivereddate”和“posteddate”两个字段都取出来,这样保险。

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

                      mailfile, false);

if(dbMail == null)

    {

              System.out.println("cannot open database " + mailfile);

    }

    else

    {

           // 如果按照下面的dc.getFirstDocument,可能连垃圾箱中的未读邮件都取出来了

           View viewInbox = dbMail.getView("($Inbox)");

           // 所以我们得到Inbox视图,这样只读取收件箱中的邮件

           Document doc = viewInbox.getFirstDocument();

          

    // 此处的新邮件数量,并不是用户自身Notes看到的新邮件数量,因为身份不同;

    // 当我们的程序第一次访问用户邮箱,所有的邮件将都是新邮件

//Document doc = dc.getFirstDocument();

 

while (doc != null)

{

           /** 添加新邮件项的节点 */

           Element mailElement = mailsElement.addElement("mail");

         

           // 发件人

           Element fromE = mailElement.addElement("from");

           fromE.addCDATA(doc.getItemValueString("Principal"));

           // 收件日期

           Element dateE = mailElement.addElement("date");

           Item deliveredDate = doc.getFirstItem( "delivereddate" ) ;

           Item     postedDate    = doc.getFirstItem( "posteddate" ) ;

           String   timestamp     = new String( "" ) ;

           if ( deliveredDate != null )

               timestamp = deliveredDate.getText() ;

            else if ( postedDate != null )

               timestamp = postedDate.getText() ;

           // 发送日期和接收日期,我们都要进行读取,发送日期是优先的

           dateE.addCDATA(timestamp);

           // 主题

           Element subjectE = mailElement.addElement("subject");

           subjectE.addCDATA(doc.getItemValueString("Subject"));

           // NoteID

           Element NoteIDE = mailElement.addElement("NoteID");

           NoteIDE.setText(doc.getNoteID());

           // UniversalID

           Element UniversalIDE = mailElement.addElement("UniversalID");

           UniversalIDE.setText(doc.getUniversalID());

          

           String strBody = "";

           if(doc.getItemValueString("Body") != null)

               {

                  strBody = doc.getItemValueString("Body");

                  if(strBody.length() > 12)

                 {

                         strBody = strBody.substring(12) + "...";

                 }

               }

               else

               {

                      strBody = "没有正文";

               }

}

 

try

                          {

                                 // grab the Body field of the current document,

                                    // and check each attachment

                                 RichTextItem bodyWithAttachs =

                                        (RichTextItem)doc.getFirstItem("Body");

                                 System.out.println("-= begin getFirstItem =-");

                                 // 查看附件

                                 if(bodyWithAttachs != null)

                                 {                                 

                                        System.out.println("-= get RichTextItem =-");

                                        

                                        Vector vAttachs = bodyWithAttachs.getEmbeddedObjects();

                                        System.out.println("-= get Vector =-");

                                        Enumeration eAttachs = vAttachs.elements();

                                        System.out.println("-= get Enumeration =-");

                                       

                                        // 读取共有多少个附件

                                        Element attachmentsE = mailElement.addElement("attachments");

                                        Element countE = attachmentsE.addElement("count");

                                        countE.setText(String.valueOf(vAttachs.size()));

 

                                        while (eAttachs.hasMoreElements())

                                        {

                                               EmbeddedObject eo = (EmbeddedObject)eAttachs.nextElement();

                                               if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT)

                                               {

                                                // 添加附件名称的节点

                                                   Element attachE = attachmentsE.addElement("attachment");

                                                   attachE.setText(eo.getSource());

                                               }

                                               eo.recycle();

                                        }

                                 }

                             }

                          catch(Exception e)

                               {

                                      if(e instanceof lotus.domino.NotesException)

                                      {

                                             System.out.println(

                                                           "访问邮件的附件时发生错误,错误代码为"

                                                     +((lotus.domino.NotesException)e).id);

                                      }

                                   e.printStackTrace();

                                   System.out.println(e.getLocalizedMessage());

                               }

2个知识点:

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

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

2:通过DocumentcreateReplyMessage方法创建回复邮件。

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

                      mailfile, false);

Document doc = dbMail.getDocumentByID(noteid);

if (doc != null)

{

                       /* createReplyMessage的参数说明

                        * boolean toall

                        If true, the new document recipient list contains all the

                        recipients of the original. If false, the new document

                        recipient list contains only the sender of the original.

                        */

                       Document reply = doc.createReplyMessage(false);

 

                       Item itemSubject = doc.getFirstItem("Subject");

                          String strItemRe = "回复:" + itemSubject.getText();

                       reply.replaceItemValue("Subject",

                               strItemRe);

 

                    reply.replaceItemValue("Body",

                           body);

                    reply.send(doc.getItemValueString("From"));

}

 

 

编写者

日期

关键词

郑昀@ultrapower

2005-6-20

Java Domino

 





http://www.niftyadmin.cn/n/3649505.html

相关文章

sidekiq redis_如何将Sidekiq和Redis添加到Ruby on Rails应用程序

sidekiq redis介绍 (Introduction) When developing a Ruby on Rails application, you may find you have application tasks that should be performed asynchronously. Processing data, sending batch emails, or interacting with external APIs are all examples of work…

使用Axure RP进行博客系统的原型设计

原型设计 我使用Axure RP软件对个人博客系统进行原型设计,其实就是仿照我的博客进行简单的设计,然后做一些改变。以下是博客首页的原型设计图。虽然很丑,但是是第一次接触原型设计。再接再厉。

Eclipse特色主题推荐——Marketplace

eclipse皮肤 由于最近Android开发使用Eclipse,所以推荐一款Eclipse的主题。前面习惯了Android studio的代码风格,虽然eclipse自带有几款不错的主题,不过优化的不是很好。在网上发现了一款主题,非常不错,安装也比较简单…

人工智能(pytorch)搭建模型17-pytorch搭建ReitnNet模型,加载数据进行模型训练与预测

大家好,我是微学AI,今天给大家介绍一下人工智能(pytorch)搭建模型17-pytorch搭建ReitnNet模型,加载数据进行模型训练与预测,RetinaNet 是一种用于目标检测任务的深度学习模型,旨在解决目标检测中存在的困难样本和不平衡…

mysql桌面应用程序_如何使用AdonisJs和MySQL构建鼓舞人心的报价应用程序

mysql桌面应用程序The author selected the Tech Education Fund to receive a donation as part of the Write for DOnations program. 作者选择了Tech Education Fund作为“ Write for DOnations”计划的一部分来接受捐赠。 介绍 (Introduction) AdonisJs is a Node.js web …

推荐一款截图神器——FSCapture

FSCapture FSCapture是一款抓屏工具,体积小巧、功能强大,不但具有常规截图等功能,更有从扫描器获取图像,和将图像转换为 PDF文档等功能。还有图片编辑,屏幕录像,编辑视频等强大的功能。以前博客的图片和视频…

Android Studio项目转为Eclipse开发以后遇到的问题

Android SDK结构不同导致报错 Android Studio和Eclipse不能共用一套Android SDK,因为使用SDK的结构不一样。把Android Studio项目转为eclipse开发,首先在eclipse新建一个Android项目,然后将Java逻辑代码和XML布局文件复制到新项目里面即可。不…

Android工程师必备的网址

实用工具集锦 Android Lifecycle https://github.com/xxv/android-lifecycle Safe.ijiami http://safe.ijiami.cn/ TinyPNG https://tinypng.com/ Android Layout Finder Android Layout Finder Android Asset Studio http://romannurik.github.io/AndroidAssetStudio/ JSON Va…