title: Reading a ZIP without extracting C#
body: <p>I have a large ZIP file, containing many directories with tens of thousands of small files that each need to be read.</p>
  
  <p>The process of extracting them from the ZIP using 7-Zip takes quite a long time. In C# I could first extract the entire ZIP somewhere before operating on it, but ideally I'd like to just read one file at a time from the ZIP into memory, without having to extract it to a location on disk.</p>
  
  <p>I have looked at the native C# ZIP utilities along with DotNetZip and SharpZipLib but haven't seen anything directly relating to what I am after.</p>
  
  <p>Can this be done &amp; will it actually offer any performance benefits over simply extracting in the first place?</p>