从C#的zip文件中读取二进制文件而不解压缩

我想从zip文件中读取二进制文件而不解压缩它。

zip文件结构:

zipFolderName/subFolder/BinFile 

在BinFile中,我有:

 Id1, id2, value1 // id1, id2 are string, value1 is int 

在C#中:

  ZipEntry binFileName = …; // it has been got from zipFile entries MemoryStream ms = new MemoryStream(); binFileName.Extract(ms); using (BinaryReader reader = new BinaryReader(ms)) { string id1 = reader.ReadString(); // error popped here string id2 = reader.ReadString(); int value1 = reader.ReadInt32(); } 

我收到错误:无法读取超出流的末尾。 似乎BinaryReader无法读取MemoryStream?

binFileName.Extract(ms); 尝试以下方法:

 ms.Seek(0, SeekOrigin.Begin);