/// <summary> /// Reads the file, and closes the stream related to it. /// </summary> public void ReadFile() { while (_fsMbdb.Position < _fsMbdb.Length) { MbdbRecord mbdbRec = new MbdbRecord(); mbdbRec.Domain = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Path = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.LinkTarget = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.DataHash = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Unknown_I = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Mode = InternalUtilities.ReadUInt16Value(_fsMbdb); mbdbRec.iNodeLookup = InternalUtilities.ReadUInt64Value(_fsMbdb); mbdbRec.UserId = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.GroupId = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.LastModifiedTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.LastAccessTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.CreationTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.FileLength = InternalUtilities.ReadUInt64Value(_fsMbdb); mbdbRec.ProtectionClass = (byte)_fsMbdb.ReadByte(); mbdbRec.PropertyCount = (byte)_fsMbdb.ReadByte(); mbdbRec.Properties = new Dictionary <string, string>(); for (int i = 0; i < mbdbRec.PropertyCount; i++) { string propName = InternalUtilities.ReadStringValue(_fsMbdb); string propVal = InternalUtilities.ReadPropertyValue(_fsMbdb); mbdbRec.Properties.Add(propName, propVal); } this.MbdbRecords.Add(mbdbRec); } _fsMbdb.Close(); }
/// <summary> /// Reads the file, and closes the stream related to it. /// </summary> public void ReadFile() { while (_fsMbdb.Position < _fsMbdb.Length) { MbdbRecord mbdbRec = new MbdbRecord(); mbdbRec.Domain = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Path = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.LinkTarget = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.DataHash = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Unknown_I = InternalUtilities.ReadStringValue(_fsMbdb); mbdbRec.Mode = InternalUtilities.ReadUInt16Value(_fsMbdb); mbdbRec.iNodeLookup = InternalUtilities.ReadUInt64Value(_fsMbdb); mbdbRec.UserId = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.GroupId = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.LastModifiedTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.LastAccessTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.CreationTime = InternalUtilities.ReadUInt32Value(_fsMbdb); mbdbRec.FileLength = InternalUtilities.ReadUInt64Value(_fsMbdb); mbdbRec.ProtectionClass = (byte)_fsMbdb.ReadByte(); mbdbRec.PropertyCount = (byte)_fsMbdb.ReadByte(); mbdbRec.Properties = new Dictionary<string, string>(); for (int i = 0; i < mbdbRec.PropertyCount; i++) { string propName = InternalUtilities.ReadStringValue(_fsMbdb); string propVal = InternalUtilities.ReadPropertyValue(_fsMbdb); mbdbRec.Properties.Add(propName, propVal); } this.MbdbRecords.Add(mbdbRec); } _fsMbdb.Close(); }