У меня есть следующий фрагмент кода:DeflateStream не работает на MemoryStream?
MemoryStream resultStream = new MemoryStream();
string users = ""//Really long string goes here
BinaryFormatter bFormatter = new BinaryFormatter();
using (MemoryStream assignedUsersStream = new MemoryStream())
{
bFormatter.Serialize(assignedUsersStream, users);
assignedUsersStream.Position = 0;
using (var compressionStream =
new DeflateStream(resultStream, CompressionLevel.Optimal))
{
assignedUsersStream.CopyTo(compressionStream);
Console.WriteLine("Compressed from {0} to {1} bytes.",
assignedUsersStream.Length.ToString(),
resultStream.Length.ToString());
}
}
дело в том, что resultStream
всегда пусто!
Что я здесь делаю неправильно?
thats it! tks alot! я буду принимать как ответ в минуту – Leonardo
Хорошо. Обязательно прочитайте ответ Томаса об устранении 1 MemoryStream, и вы также можете заменить Formatter на 'Encoding.GetBytes()'. –