byte[] MakeMemZip(ref byte[] original, CompressionMethod method, int compressionLevel, int size, string password, bool withSeek) { MemoryStream ms; if (withSeek == true) { ms = new MemoryStream(); } else { ms = new MemStreamWithoutSeek(); } ZipOutputStream outStream = new ZipOutputStream(ms); if (password != null) { outStream.Password = password; } if (method != CompressionMethod.Stored) { outStream.SetLevel(compressionLevel); // 0 - store only to 9 - means best compression } ZipEntry entry = new ZipEntry("dummyfile.tst"); entry.CompressionMethod = method; outStream.PutNextEntry(entry); if (size > 0) { original = new byte[size]; System.Random rnd = new Random(); rnd.NextBytes(original); outStream.Write(original, 0, original.Length); } outStream.Close(); return(ms.GetBuffer()); }
public void StoredNonSeekableConvertToDeflate() { MemStreamWithoutSeek ms = new MemStreamWithoutSeek(); ZipOutputStream outStream = new ZipOutputStream(ms); outStream.SetLevel(8); Assertion.AssertEquals("Compression level invalid", 8, outStream.GetLevel()); ZipEntry entry = new ZipEntry("1.tst"); entry.CompressionMethod = CompressionMethod.Stored; outStream.PutNextEntry(entry); Assertion.AssertEquals("Compression level invalid", 0, outStream.GetLevel()); AddRandomDataToEntry(outStream, 100); entry = new ZipEntry("2.tst"); entry.CompressionMethod = CompressionMethod.Deflated; outStream.PutNextEntry(entry); Assertion.AssertEquals("Compression level invalid", 8, outStream.GetLevel()); AddRandomDataToEntry(outStream, 100); outStream.Close(); }
byte[] MakeMemZip(ref byte[] original, CompressionMethod method, int compressionLevel, int size, string password, bool withSeek) { MemoryStream ms; if (withSeek == true) { ms = new MemoryStream(); } else { ms = new MemStreamWithoutSeek(); } ZipOutputStream outStream = new ZipOutputStream(ms); if (password != null) { outStream.Password = password; } if (method != CompressionMethod.Stored) outStream.SetLevel(compressionLevel); // 0 - store only to 9 - means best compression ZipEntry entry = new ZipEntry("dummyfile.tst"); entry.CompressionMethod = method; outStream.PutNextEntry(entry); if (size > 0) { original = new byte[size]; System.Random rnd = new Random(); rnd.NextBytes(original); outStream.Write(original, 0, original.Length); } outStream.Close(); return ms.GetBuffer(); }
public void StoredNonSeekableConvertToDeflate() { MemStreamWithoutSeek ms = new MemStreamWithoutSeek(); ZipOutputStream outStream = new ZipOutputStream(ms); outStream.SetLevel(8); Assertion.AssertEquals("Compression level invalid", 8, outStream.GetLevel()); ZipEntry entry = new ZipEntry("1.tst"); entry.CompressionMethod = CompressionMethod.Stored; outStream.PutNextEntry(entry); Assertion.AssertEquals("Compression level invalid", 0, outStream.GetLevel()); AddRandomDataToEntry(outStream, 100); entry = new ZipEntry("2.tst"); entry.CompressionMethod = CompressionMethod.Deflated; outStream.PutNextEntry(entry); Assertion.AssertEquals("Compression level invalid", 8, outStream.GetLevel()); AddRandomDataToEntry(outStream, 100); outStream.Close(); }