以下のコードを使用してファイルを圧縮しましたが、ファイルは縮小する代わりに拡大し続けます。4 kb のファイルを圧縮すると、6 になりました。これは、圧縮のオーバーヘッドのため、小さなファイルの場合は理解できます。400MBのファイルを試してみたところ、圧縮後628MBになりました。なにが問題ですか?コードを参照してください。(.net 2.0)
Public Sub Compress(ByVal infile As String, ByVal outfile As String)
Dim sourceFile As FileStream = File.OpenRead(inFile)
Dim destFile As FileStream = File.Create(outfile)
Dim compStream As New GZipStream(destFile, CompressionMode.Compress)
Dim myByte As Integer = sourceFile.ReadByte()
While myByte <> -1
compStream.WriteByte(CType(myByte, Byte))
myByte = sourceFile.ReadByte()
End While
sourceFile.Close()
destFile.Close()
End Sub