public string GetString(uint nameIndex) { if (nameIndex == 0) { return(null); } if (NameIndex_String.TryGetValue(nameIndex, out string cachedString)) { return(cachedString); } string str = rdr.PerformAt(nameIndex, () => { return(rdr.ReadCString()); }); NameIndex_String.Add(nameIndex, str); return(str); }
public string GetString(uint index) { if (!Index_Offset.ContainsKey(index)) { return(null); } if (Index_String.TryGetValue(index, out string cachedString)) { return(cachedString); } uint offset = Index_Offset[index]; rdr.Position = offset; string str = rdr.ReadCString(); Index_String.Add(index, str); return(str); }
public string GetString(uint index) { rdr.Position = index; return(rdr.ReadCString()); }