Из вашего вопроса не совсем понятно, что вы делаете, но если вы просто пытаетесь избежать сохранения на диск и последующей загрузки для получения данных, просто сохраните в MemoryStream
:
byte[] data;
using (MemoryStream ms = new MemoryStream())
{
zipFile.Save(ms);
data = ms.ToArray();
}
// Do whatever with data.
В качестве альтернативы, используйте MemoryStream.GetBuffer()
, чтобы избежать создания другой копии:
byte[] buffer;
int length;
using (MemoryStream ms = new MemoryStream())
{
zipFile.Save(ms);
buffer = ms.ToArray();
length = ms.Length;
}
// Now use buffer, but only up to "length"...