21 public static void WriteBlock(
Stream stream,
long numberOfEntries,
long startOfCentralDirectory,
long sizeOfCentralDirectory,
byte[] archiveComment)
24 ushort
value = ((numberOfEntries > 65535) ? ushort.MaxValue : ((ushort)numberOfEntries));
25 uint value2 = (uint)((startOfCentralDirectory > uint.MaxValue) ? uint.MaxValue : startOfCentralDirectory);
26 uint value3 = (uint)((sizeOfCentralDirectory > uint.MaxValue) ? uint.MaxValue : sizeOfCentralDirectory);
27 binaryWriter.
Write(101010256u);
28 binaryWriter.
Write((ushort)0);
29 binaryWriter.
Write((ushort)0);
32 binaryWriter.
Write(value3);
33 binaryWriter.
Write(value2);
34 binaryWriter.
Write((ushort)((archiveComment !=
null) ? ((ushort)archiveComment.Length) : 0));
35 if (archiveComment !=
null)
37 binaryWriter.
Write(archiveComment);
48 eocdBlock.Signature = 101010256u;
49 eocdBlock.NumberOfThisDisk = reader.
ReadUInt16();
50 eocdBlock.NumberOfTheDiskWithTheStartOfTheCentralDirectory = reader.
ReadUInt16();
51 eocdBlock.NumberOfEntriesInTheCentralDirectoryOnThisDisk = reader.
ReadUInt16();
52 eocdBlock.NumberOfEntriesInTheCentralDirectory = reader.
ReadUInt16();
53 eocdBlock.SizeOfCentralDirectory = reader.
ReadUInt32();
54 eocdBlock.OffsetOfStartOfCentralDirectoryWithRespectToTheStartingDiskNumber = reader.
ReadUInt32();