Difference between revisions of "TStringList"

From Lazarus wiki
Jump to navigationJump to search
Line 8: Line 8:
  
 
TStringList adds sorting functionality to [[TStrings]] by adding properties <tt>Sorted</tt>, <tt>Duplicates</tt> and <tt>CaseSensitive</tt> and methods like <tt>Find</tt> to facilitate speeded search within a list.
 
TStringList adds sorting functionality to [[TStrings]] by adding properties <tt>Sorted</tt>, <tt>Duplicates</tt> and <tt>CaseSensitive</tt> and methods like <tt>Find</tt> to facilitate speeded search within a list.
 +
 +
;Example
 +
<syntaxhighlight>
 +
  // get a value from file FILNAM filled with key=value pairs
 +
function GetValueFromFile( filnam: string, key: string ): string;
 +
var
 +
  lst: TStringList;
 +
  v: String;
 +
begin
 +
  lst := TStringList.Create();
 +
  lst.CaseSensitive := false;
 +
  lst.Duplicates := false;
 +
  lst.Sorted := true;
 +
  lst.ReadFromFile( filnam );
 +
  v := lst.Values[ key ];
 +
  lst.Free();
 +
  result := v;
 +
end;
 +
</syntaxhighlight>
  
 
==See also==
 
==See also==

Revision as of 14:08, 23 February 2017

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.

Inheritance
  • 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.

Example
  // get a value from file FILNAM filled with key=value pairs 
function GetValueFromFile( filnam: string, key: string ): string;
var
  lst: TStringList;
  v: String;
begin
  lst := TStringList.Create();
  lst.CaseSensitive := false;
  lst.Duplicates := false;
  lst.Sorted := true;
  lst.ReadFromFile( filnam );
  v := lst.Values[ key ];
  lst.Free();
  result := v;
end;

See also