BCNet.Bitcoin.WriteArchive C# (CSharp) Method

WriteArchive() private method

private WriteArchive ( List archive ) : void
archive List
return void
        void WriteArchive(List<Block> archive)
        {
            try
            {
                string filename = String.Format("/{0:D5}.blocks", mArchiveMarker / 10000);
                FileStream fs = File.Open(mDataPath + filename, FileMode.Create);
                BinaryWriter bw = new BinaryWriter(fs);

                int version = 0;
                bw.Write(version);
                bw.Write(archive.Count);

                for (int i = 0; i < archive.Count; i++)
                {
                    int height = mArchiveMarker + i;
                    if (height == 0)
                        continue;
                    foreach (Block b in archive)
                    {
                        if (b.mHeight == height)
                        {
                            b.Save(bw);
                            mBlocks.Remove(b);
                            break;
                        }
                    }
                }

                bw.Close();
                mArchiveMarker += 10000;
            }
            catch (Exception ex)
            {
                Console.WriteLine("Archive issue: " + ex.Message);
            }
        }