1

Тема: Запись base64 текста в поток NotesStream и далее в файл

Задача: сохранить последовательность base64 из переменной в файл, для этого используем поток NotesStream .
Вот рабочий код:

        myfilename$ = "mytemp.pdf"
                        oname$ = "C:\XML\" & myfilename$
                        'Call strm3.Open("C:\XML\mytemp2.txt", "UTF-8" )
                        strbase64$ =  Strrightback(  ndan.NodeValue, "base64,")
                        Print Left (strbase64$, 40)
                        
                        Dim db As NotesDatabase 
                        Dim session As New NotesSession
                        Dim docNew As NotesDocument 
                        Dim mime As NotesMIMEEntity 
                        Dim streamlnput As NotesStream
                        Set streamlnput= session.CreateStream 'создаем поток под ввод в него текста для MIME-содержимого
                        Dim streamOutput As NotesStream 
                        Set streamOutput= session.CreateStream ' получения текста из MIME-содержимого
                        
                        Set db = session.CurrentDatabase
                        Set docNew= New NotesDocument (db )
                        session.ConvertMIME = False 'запрещаем преобразование MIME_PART в rich text
                        Set mime = docNew.CreateMIMEEntity
                        If Not (mime Is Nothing) Then
                        'Call    streamlnput.open (oname$)
                            Call streamOutput.Open(oname$, "binary")    ' в поток inStream файл        
                            
                            Call streamlnput.WriteText( strbase64$ ) 'печатаем текст в поток
                            Call mime.SetContentFromText( streamlnput, {text/html; charset="KOI8-R"}, ENC_BASE64 )
                            Call mime.GetContentAsText( streamOutput, True ) 'получаем MIME-содержимое в поток
                            Call streamlnput.Close() 'закрываем входной поток
                            Call streamOutput.Close() 'закрываем выходной поток
                            session.ConvertMIME = True 'разрешаем преобразование MIME_PART в rich text 
                        End If

Поделиться