TStringList/fi

From Lazarus wiki

English (en) suomi (fi)

TStringList on luokka (Class) josta johdetut oliot voivat olla mielivaltaisen pitkiä merkkijono (string) luetteloita. Merkkijonot ovat TStringList:ssa ketjutettuina teksteinä tai merkkijonojen sarjana. Toiminnallisuutena on myös avainarvoparin hakeminen.


Periytyminen
  • TObject - Kaikkien (Class) luokkien kantaluokka.
    • TPersistent, IFPObserved - Kantaluokka tietovirtassa ja pysyvissä ominaisuuksissa (stream & persistent) - Liitäntä oliolle, joka voidaan havaita (Interface observed object).
      • TStrings - Luokka merkkijonotaulukkojen ja -kokoelmien hallintaan
        • TStringList - Vakiototeutus TStrings-luokasta.

TStringList lisää lajittelu toiminnallisuuden verrattuna TStrings-luokkaan lisäämällä ominaisuudet Sorted (lajiteltu), Duplicates (kopiot) ja CaseSensitive (onko isoilla ja pienillä kirjaimilla eroa) sekä metodit kuten Find (etsi) nopeuttaakseen etsintää TStringList:n merkkijonoista.

Esimerkki
  // Saavat arvon tiedostosta FILNAM täynnä avainarvopareilla (key=value)
function GetValueFromFile( filnam: string, key: string ): string;
var
  lst: TStringList;
  v: String;
begin
  lst := TStringList.Create();
  lst.CaseSensitive := false;
  lst.Duplicates := dupIgnore; // Älä lisää kopioita
  lst.Sorted := true;
  lst.LoadFromFile( filnam );
  v := lst.Values[ key ];
  lst.Free();
  result := v;
end;

Katso myös