Я создал веб-приложение, в котором пользователь может выбрать zip-файл из своей файловой системы (через asp:FileUpload). Затем приложение распаковывает zip-файл и каждый файл ftp.
вот код:
Public Sub Unzip(ByVal str As Stream, ByVal constr As String)
Dim zf As New ZipFile(str)
Dim ze As ZipEntry
Dim i As Integer = 0
While i < zf.Count
ze = zf.EntryByIndex(i)
i = i + 1
Dim ftp As New ftpItem(constr)
ftp.upload(ze.Name, "pic", zf.GetInputStream(i), ze.Name, ze.Name)
End While
zf.Close()
End Sub
Класс ftpItem — это мой собственный класс, который обрабатывает файлы ftp. ftp.upload в качестве третьего параметра требуется поток для отправляемого файла.
Но почему-то zf.GetInputStream(i) всегда ничего не дает.