[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] Reference for unit 'Classes' (#rtl)

TStrings

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Class to manage arrays or collections of strings

Declaration

Source position: classesh.inc line 615

type TStrings = class(TPersistent)

public

  constructor Create;

  

Initializ a new TStrings instance

  destructor Destroy; override;

  

Frees all strings and objects, and removes the list from memory.

  function ToObjectArray();

  function ToStringArray();

  function Add();

  

Add a string to the list

  function AddObject();

  

Add a string and associated object to the list.

  function AddPair();

  

Add a name-value pair

  procedure AddStrings();

  

Add contents of another stringlist to this list.

  procedure SetStrings();

  procedure AddText(); virtual;

  

Add text to the string list.

  procedure AddCommaText();

  procedure AddDelimitedText();

  procedure Append();

  

Add a string to the list.

  procedure Assign(); override;

  

Assign the contents of another stringlist to this one.

  procedure BeginUpdate;

  

Mark the beginning of an update batch.

  procedure Clear; virtual; abstract;

  

Removes all strings and associated objects from the list.

  procedure Delete(); virtual; abstract;

  

Delete a string from the list.

  procedure EndUpdate;

  

Mark the end of an update batch.

  function Equals();

  

Compares the contents of two stringlists.

  procedure Exchange(); virtual;

  

Exchanges two strings in the list.

  function ExtractName();

  

Extract the name part of a string

  procedure Filter();

  procedure Fill();

  procedure ForEach();

  function GetEnumerator;

  

Create an IEnumerator instance

  procedure GetNameValue();

  

Return both name and value of a name,value pair based on it's index.

  function GetText; virtual;

  

Returns the contents as a PChar

  function IndexOf();

  

Find a string in the list and return its position.

  function IndexOfName(); virtual;

  

Finds the index of a name in the name-value pairs.

  function IndexOfObject(); virtual;

  

Finds an object in the list and returns its index.

  procedure Insert(); virtual; abstract;

  

Insert a string in the list.

  procedure InsertObject();

  

Insert a string and associated object in the list.

  function LastIndexOf();

  procedure LoadFromFile();

  

Load the contents of a file as a series of strings.

  procedure LoadFromStream();

  

Load the contents of a stream as a series of strings.

  procedure Map();

  procedure Move(); virtual;

  

Move a string from one place in the list to another.

  function Pop;

  function Reduce();

  function Reverse();

  procedure SaveToFile();

  

Save the contents of the list to a file.

  procedure SaveToStream();

  

Save the contents of the string to a stream.

  function Shift;

  procedure Slice();

  procedure SetText(); virtual;

  

Set the contents of the list from a PChar.

  property AlwaysQuote: Boolean; [rw]

  

Always quote strings in DelimitedText

  property Capacity: Integer; [rw]

  

Capacity of the list, i.e. number of strings that the list can currently hold before it tries to expand.

  property CommaText: string; [rw]

  

Contents of the list as a comma-separated string.

  property Count: Integer; [r]

  

Number of strings in the list.

  property DefaultEncoding: TEncoding; [rw]

  

Default encoding of stringlist

  property DelimitedText: string; [rw]

  

Get or set all strings in the list in a delimited form.

  property Delimiter: Char; [rw]

  

Delimiter character used in DelimitedText.

  property Encoding: TEncoding; [r]

  

Current encoding of stringlist

  property LineBreak: string; [rw]

  

LineBreak character to use

  property MissingNameValueSeparatorAction: TMissingNameValueSeparatorAction; [rw]

  property Names []: string; [r]

  

Name parts of the name-value pairs in the list.

  property NameValueSeparator: Char; [rw]

  

Value of the character used to separate name,value pairs

  property Objects []: TObject; [rw]

  

Indexed access to the objects associated with the strings in the list.

  property Options: TStringsOptions; [rw]

  

A set of TStringsOption - various boolean properties.

  property QuoteChar: Char; [rw]

  

Quote character used in DelimitedText.

  property SkipLastLineBreak: Boolean; [rw]

  

Do not add a linebreak to the last item

  property TrailingLineBreak: Boolean; [rw]

  

Add a linebreak to the last item

  property StrictDelimiter: Boolean; [rw]

  

Should only the delimiter character be considered a delimiter

  property Strings []: string; default; [rw]

  

Indexed access to the strings in the list.

  property StringsAdapter: IStringsAdapter; [rw]

  

Not implemented in Free Pascal.

  property Text: string; [rw]

  

Contents of the list as one big string.

  property TextLineBreakStyle: TTextLineBreakStyle; [rw]

  

Determines which line breaks to use in the Text property

  property UseLocale: Boolean; [rw]

  

Determines what methods are used in strings comparison.

  property ValueFromIndex []: string; [rw]

  

Return the value part of a string based on it's index.

  property Values []: string; [rw]

  

Value parts of the name-value pairs in the list.

  property WriteBOM: Boolean; [rw]

  

Write BOM when writing stringlist to stream

end;

Inheritance

TStrings

  

Class to manage arrays or collections of strings

|

TPersistent,IFPObserved

  

Base class for streaming system and persistent properties.

|

TObject

Description

TStrings implements an abstract class to manage an array of strings. It introduces methods to set and retrieve strings in the array, searching for a particular string, concatenating the strings and so on. It also allows an arbitrary object to be associated with each string.

It also introduces methods to manage a series of name=value settings, as found in many configuration files.

An instance of TStrings is never created directly, instead a descendant class such as TStringList should be created. This is because TStrings is an abstract class which does not implement all methods; TStrings also doesn't store any strings, this is the functionality introduced in descendants such as TStringList.

TStrings implements the IFPObserved interface: when the stringlist is changed, a ooChanged notification is sent to all observers.

See also

TStringList

  

Standard implementation of the TStrings class.

IFPObserved

  

Interface implemented by an object that can be observed.


Documentation generated on: Jun 22 2020