Stream Для Zip-файлов. Help.

Тема в разделе "Lotus - Программирование", создана пользователем susinmn, 27 дек 2011.

  1. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Нужно создать zip-архив и передать его побайтно с помощью web-сервиса.

    zip-архив создаю, открывается нормально.
    далее пытаюсь передать архив побайтно
    Код (Text):
    Dim uploadFile As New XSD_BASE64BINARY

    Set Stream = s.CreateStream
    If Not Stream.Open(zipFilePath, "binary") Then
    ....
    End If

    Call uploadFile.setValueFromNotesStream(Stream)
    при принятии, архив не открывается.
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    есть два предположения:
    -обратно, из бэйз64, никто не преобразует B)
    -"как обычно" - в ЛС криво реализовано
     
  3. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    маленькие zip-файлы открываются, большие нет B)
    причем при передачи не заархивированного *большого* файла, все ровно.
    чудеса...
     
  4. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    вот где чудеса:
    Код (Text):
    Call uploadFile.SetValueFromNotesStream(Stream)
    Set tmpStream=uploadFile.Getvalueasnotesstream()

    Stream - ["Binary", True, 1162710, 1162710, False]
    tmpStream - ["Unicode", True, 313036, 313036, False]
     
  5. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Вот с такого толкача, вроде бы, завелся...тестируем...

    Код (Text):
    outString=""

    Do
    Set OutStream = s.CreateStream
    buffer = Stream.Read(32767)
    Call OutStream.Write(buffer)
    Call uploadFile.SetValueFromNotesStream(OutStream)
    outString=outString+uploadFile.Getvalueasstring()
    Loop Until Stream.IsEOS

    Call uploadFile.Setvaluefromstring(outString)
     
  6. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
Загрузка...

Поделиться этой страницей