title: Copy files from one Zip file to another
body: <p>I am copying files from one zip file to another in certain circumstances. I am wondering if there is a better way to do it than what I came up with:</p>
  <pre><code>using FileStream sourceFileStream = new FileStream(source.FileName, FileMode.Open);
  using FileStream targetFileStream = new FileStream(target.FileName, FileMode.Open, FileAccess.ReadWrite);
  using ZipArchive sourceZip = new ZipArchive(sourceFileStream, ZipArchiveMode.Read);
  using ZipArchive targetZip = new ZipArchive(targetFileStream, ZipArchiveMode.Update);
  ZipArchiveEntry sourceEntry = sourceZip.GetEntry(filePathInArchive);
  if (sourceEntry == null) 
      return;
  ZipArchiveEntry targetEntry = targetZip.GetEntry(filePathInArchive);
  if (targetEntry != null) 
      targetEntry.Delete();
  targetZip.CreateEntry(filePathInArchive);
  targetEntry = targetZip.GetEntry(filePathInArchive);
  if (targetEntry != null)
  {
      Stream writer = targetEntry.Open();
      Stream reader = sourceEntry.Open();
  
      int b;
      do
      {
          b = reader.ReadByte();
          writer.WriteByte((byte)b);
      } while (b != -1);
  
  
      writer.Close();
      reader.Close();
  }
  </code></pre>
  <p>Tips and suggestions would be appreciated.</p>