Autor Beitrag
schitho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 288

XP Home SP2
D2005 Prof
BeitragVerfasst: Fr 12.09.03 22:15 
Hi,

TStrings ist gut geeignet, um Strings in Listen zu speichern (no-na-net).

Was aber wenn ich zusätzlich zu jedem String eine weitere Info speichern möchte.

Kann ich da nur mehrdimensionale Arrays verwenden?

Wenn ja: Wie lösche ich einzelne Arrays heraus, ohne dass eine Lücke entsteht (ähnlich wie bei TStrings mittels Delete)?

Thanx

lg
Thomas

_________________
(Sorry! Leider ewiger Delphi-Neuling)
Brueggendiek
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 304

Win 98, Win98SE, Win XP Home
D5 Std
BeitragVerfasst: Fr 12.09.03 22:29 
Hallo Thomas!

Zunächst einmal nehmen wir nicht TStrings, sondern TStringList, denn TStrings ist eine abstrakte Basisklasse, die man nicht direkt benutzen soll. Man leitet eigene Klassen davon ab oder benutzt eine der vorhandenen Ableitungen. Weiteres in der OH.

Außerdem kannst Du Dir ja mal ansehen, was das Property "Objects" von TStringList bedeutet - vielleicht ist das ja für Deine Zwecke geeignet.

Unter Umständen kann auch das Ergänzen des Strings um einige (z.B. festformatierte) String-Werte ('+' und '-' bei Boolean, mit Formatierungen ausgegebene Zahlen etc.) helfen.
'000000123;C:\TEST.dat' könnte z.B. der Eintrag einer Dateiliste sein, die Datei heißt "C:\TEST.dat" und ist 123 Bytes groß. Bei identischer Zahlenlänge und sortierter Speicherung könnte dann sogar ein nach Dateigrößen sortiertes Verzeichnis entstehen.

Aus Arrays kann man keine einzelnen Einträge löschen. Man muß entweder ein "Gelöscht"-Flag zufügen oder das ganze Array verschieben.

Gruß

Dietmar Brüggendiek