ユーザーがファイルシステムから(asp:FileUploadを介して)zipファイルを選択できるWebアプリケーションを構築しました。次に、アプリケーションは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は、3番目のパラメーターとしてファイルを送信するためのストリームを必要とします。
しかし、何らかの理由で、zf.GetInputStream(i)は常に何も提供しません。