From Lazarus wiki

English (en) suomi (fi) polski (pl)

A TStringList is a datatype that can hold an arbitrary length list of strings. The strings in a TStringList are accessible as concatenated plain text or as a series of strings. Functionality is also provided for key-value pair access.

  • TObject - Base class of all classes.
    • TPersistent, IFPObserved - Base class for streaming system and persistent properties - Interface implemented by an object that can be observed.
      • TStrings - Class to manage arrays or collections of strings
        • TStringList - Standard implementation of the TStrings class.

TStringList adds sorting functionality to TStrings by adding properties Sorted, Duplicates and CaseSensitive and methods like Find to facilitate speeded search within a list.

  // get a value from file FILNAM filled with key=value pairs 
function GetValueFromFile( filnam: string, key: string ): string;
  lst: TStringList;
  v: String;
  lst := TStringList.Create();
  lst.CaseSensitive := false;
  lst.Duplicates := dupIgnore; // do not add duplicates
  lst.Sorted := true;
  lst.LoadFromFile( filnam );
  v := lst.Values[ key ];
  result := v;

See also