Decomprimere un file

lunedì 23 gennaio 2006 - 11.12

fustaman Profilo | Junior Member

ciao, a tutti, sono alle prime armi con la programmazione .net, sto cercando di creare un metodo di un webservice che riceve in un array di byte un file compresso e lo decomprime mantenendo la struttura delle directory e poi restituisce la struttura della dyrectory come documento xml. Sto provando ad utilizzare la libreria gratuita SharpZLib, ma non riesco a trovare documentazione sufficiente a capire come funziona qualcuno di voi mi può aiutare facendomi vedere qualche pezzo di codice per decomprimere un file? Questo è quello che sono arrivato a fare fino ad ora, ma non so neanche se è giusto.

Grazie mille

Public Function uploadFiles(ByVal bytearray() As Byte) As XmlDocument
Dim inf As New Inflater()
inf.SetInput(bytearray)

Dim outarray(inf.TotalOut) As Byte
inf.Inflate(outarray)
End Function

GvnnRules Profilo | Senior Member

http://www.dotnethell.it/articles/Ziplib.aspx

Peace
Gvnn

http://www.gvnn.it
http://www.sqlwebarchitect.org
http://blogs.dotnethell.it/gvnn/

fustaman Profilo | Junior Member

grazie mille

fustaman Profilo | Junior Member

per caso mi sapresti anche dire perchè non riesco a fargli caricare il file da un memorystream?
se gli faccio caricare il file da un file salvato sul disco con il metodo openRead che restituisce un filestream va tutto bene, ma se provo a farlo con un memorystream che comunque eredita dalla classe io.stream come filestream al momento della chiamata del metodo getnexitem mi da errore dicendo che ha trovato l'EOF insaspettatamente ed in effetti in debug andando a controllare l'oggetto ZipImputStream me lo da con lunghezza zero.

questo è il mio codice:

Public Function uploadFiles(ByVal bytearray() As Byte) As String
Dim istream As New IO.MemoryStream(bytearray)
istream.Read(bytearray, 0, bytearray.Length)
Dim s As New ZipInputStream(istream)

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5