11/02/11 14:31
Phil93
Public Function CompressByte(ByVal byteSource() As Byte) As Byte() Dim objMemStream As New MemoryStream() Dim objGZipStream As New GZipStream(objMemStream, CompressionMode.Compress, True) objGZipStream.Write(byteSource, 0, byteSource.Length) objGZipStream.Dispose() objMemStream.Position = 0 Dim buffer(objMemStream.Length) As Byte objMemStream.Read(buffer, 0, buffer.Length) objMemStream.Dispose() Return buffer End Function Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim B1() As Byte = File.ReadAllBytes(TextBox1.Text) Dim B2() As Byte = CompressByte(B1) Dim Len1, Len2 As Integer Len1 = B1.Length Len2 = B2.Length End Sub
Ho un problema con questa funzione per comprimere array di Byte.
Il problema è che con alcuni file effettivamente Len2 è minore di Len1, e va bene, ma con altri Len2 è addirittura maggiore di Len1. Che errori ho fatto? In alternativa, avete altre funzioni da indicarmi?
Grazie.
aaa