TStringList/fi

From Lazarus wiki
Jump to navigationJump to search

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

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