public Write ( byte buffer, int offset, int count ) : void | ||
buffer | byte | An array of bytes. This method copies |
offset | int | The zero-based byte offset in |
count | int | The number of bytes to be written to the current stream. |
return | void |
public void Save(System.IO.Stream stream) { MemoryStream memoryStream = new MemoryStream(); var writer = new System.IO.BinaryWriter(memoryStream); writer.Write(dict.Count); foreach (KeyValuePair <string, LZ4Entry> pair in dict) { writer.Write(pair.Key); writer.Write(pair.Value.bytes.Length); writer.Write(pair.Value.bytes); } using (LZ4Stream lz4Stream = new LZ4Stream(stream, CompressionMode.Compress, LZ4StreamFlags.HighCompression)) { lz4Stream.Write(memoryStream.ToArray(), 0, (int)memoryStream.Length); } }
/// <summary> /// Compresses a byte array. /// </summary> /// <param name="input">Uncompressed data.</param> /// <returns>Compressed data.</returns> public static byte[] Compress(byte[] input) { MemoryStream memstream = new MemoryStream(); LZ4Stream lzstream = new LZ4Stream(memstream, LZ4StreamMode.Compress); lzstream.Write(input, 0, input.Length); lzstream.Close(); byte[] finaldata = memstream.ToArray(); memstream.Close(); return finaldata; }