private void saveAsButton_Click(object sender, EventArgs e) { SaveFileDialog saveDialog = new SaveFileDialog(); saveDialog.Filter = "Binary files (*.bin)|*.bin"; if (saveDialog.ShowDialog() != DialogResult.OK) return; // For testing purpose if (Header == null) { File.WriteAllBytes(saveDialog.FileName, SaveData); return; } LZ11 lz11 = new LZ11(); byte[] compressed; using (MemoryStream inStream = new MemoryStream(SaveData)) { using (MemoryStream outStream = new MemoryStream()) { lz11.Compress(inStream, SaveData.Length, outStream); compressed = outStream.ToArray(); } } using (FileStream fs = new FileStream(saveDialog.FileName, FileMode.Create, FileAccess.Write)) { using (BinaryWriter bw = new BinaryWriter(fs)) { bw.Write(Header); bw.Write(compressed); } } }