Вы не можете сделать это, используя GZipStream .Вам понадобится реализация стандарта ZIP, такого как # ziplib .Цитата из MSDN:
Сжатые объекты GZipStream, записанные в файл с расширением .gz, могут быть распакованы с использованием многих распространенных инструментов сжатия;однако этот класс по своей природе не обеспечивает функциональность для добавления файлов или извлечения файлов из архивов .zip.
Пример с #ziplib:
using (var stream = File.OpenRead("test.zip"))
using (var zipStream = new ZipInputStream(stream))
{
ZipEntry entry;
while ((entry = zipStream.GetNextEntry()) != null)
{
// entry.IsDirectory, entry.IsFile, ...
Console.WriteLine(entry.Name);
}
}