例: GetEntityAsText method

  1. 次のエージェントは「text/plain」MIME エンティティのヘッダーとコンテントを取得し、それを TXT ファイルに保存します。
    Sub Initialize
      Dim s As New NotesSession
      Dim db As NotesDatabase
      Dim dc As NotesDocumentCollection
      Dim doc As NotesDocument
      Dim mime As NotesMIMEEntity
      Dim stream As NotesStream
      Set db = s.CurrentDatabase
      s.ConvertMIME = False ' Do not convert MIME to rich text
      Set dc = db.UnprocessedDocuments
      Set doc = dc.GetFirstDocument
      If Not(doc Is Nothing) Then
        Set mime = doc.GetMIMEEntity
        If Not(mime Is Nothing) Then
          If mime.ContentType = "text" And _
          mime.ContentSubType = "plain" Then
            Set stream = s.CreateStream
            pathname$ = "c:¥lotus¥notes¥data¥temp.txt"
            If Not stream.Open(pathname$, "us-ascii") Then
              Messagebox pathname$,, "Open failed"
              Goto ExitSub
            End If
            Call mime.GetEntityAsText(stream)
          Else
            Messagebox "Not plain text",, _
            doc.GetItemValue("Subject")(0)
          End If
        Else
          Messagebox "Not MIME",, doc.GetItemValue("Subject")(0)
        End If
      End If
      s.ConvertMIME = True ' Restore conversion
    ExitSub:
    End Sub
  2. 次のエージェントは「text/plain」MIME エンティティのヘッダーとコンテントを取得し、From ヘッダーと Subject ヘッダーだけを含めて TXT ファイルに保存します。
    Sub Initialize
      Dim s As New NotesSession
      Dim db As NotesDatabase
      Dim dc As NotesDocumentCollection
      Dim doc As NotesDocument
      Dim mime As NotesMIMEEntity
      Dim stream As NotesStream
      Set db = s.CurrentDatabase
      s.ConvertMIME = False ' Do not convert MIME to rich text
      Set dc = db.UnprocessedDocuments
      Set doc = dc.GetFirstDocument
      If Not(doc Is Nothing) Then
        Set mime = doc.GetMIMEEntity
        If Not(mime Is Nothing) Then
          If mime.ContentType = "text" And _
          mime.ContentSubType = "plain" Then
            Set stream = s.CreateStream
            pathname$ = "c:¥lotus¥notes¥data¥temp.txt"
            If Not stream.Open(pathname$, "us-ascii") Then
              Messagebox pathname$,, "Open failed"
              Goto ExitSub
            End If
            Dim filters(2) As String
            filters(1) = "From"
            filters(2) = "Subject"
            Call mime.GetEntityAsText(stream, filters, True)
            Call stream.Close()
          Else
            Messagebox "Not plain text",, _
            doc.GetItemValue("Subject")(0)
          End If
        Else
          Messagebox "Not MIME",, _
          doc.GetItemValue("Subject")(0)
        End If
      End If
    ExitSub:
      s.ConvertMIME = True ' Restore conversion
    End Sub