Entwickler-Ecke
Sonstiges (Delphi) - Doppelte Einträge vermeiden !
Jagg - Mo 26.05.03 11:23
Titel: Doppelte Einträge vermeiden !
Hallo Leute !
Ich habe eine TStringList erstellt in der DateiNamen hineingeschrieben werden,so ist das auch soweit in Ordung :-)
Aber wenn ich jetzt z.b. einen DateiNamen hinzufüge,der schon in der StringList enthalten ist,will ich,das er den DateiNamen gar nicht reinschreibt !
Delphi-Quelltext
1: 2: 3: 4: 5:
| for a := 0 to DatenList.Count-1 do begin DatenList.add(Table1.Tablename); DatenList.SaveToFile(ChangeFileExt(Application.ExeName,'.log')); end; |
....ich weiss nicht,wie ich vorgehen soll,das er doppelte Einträge vermeidet !
Könnt ihr mir helfen ???
Jagg !
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Udontknow - Mo 26.05.03 11:27
Nun, du könntest ja einfach eine Funktion schreiben, die nachguckt, ob der String schon in der Liste ist.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| if not (StrIsInList(Str)) then Liste.add...
function StrIsInList(Str:String):Boolean; var i:integer; begin Result:=False; for i:=0 to List.Count-1 do if List[i]=Str then begin Result:=True; exit; end; end; |
Es geht aber auch einfacher:
Delphi-Quelltext
1: 2:
| Liste.Sorted:=True; Liste.duplicates:=dupignore; |
Cu,
Udontknow
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Jagg - Mo 26.05.03 11:51
wenn das mit dem sorted und duplicates einfacher geht,warum erkennt das Programm den Befehl nicht !
Ich benutze TStringList
z.b.
DatenList.Sorted erkennt er nicht !
Udontknow - Mo 26.05.03 11:56
Ist Datenlist wirklich eine Variable vom Typ TStringlist? Oder etwa vom Typ TStrings? Die sind ja zuweisungskompatibel. Probiere dann mal TStringlist(Datenlist).Sorted:=True. Oder besser gleich den Variablen-Typen ändern.
Cu,
Udontknow
Jagg - Mo 26.05.03 11:58
ne ist vom typ Tstring
Jagg - Mo 26.05.03 11:59
tstrings
Udontknow - Mo 26.05.03 12:05
Es gibt eine Edit-Funktion... :roll:
Wie ich gerade schon sagte, entweder abändern (TStrings -> TStringlist) oder aber casten:
Delphi-Quelltext
1: 2:
| TStringlist(Datenlist).Sorted:=True; TStringlist(Datenlist).Duplicates:=DupIgnore; |
Cu,
Udontknow
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Jagg - Mo 26.05.03 12:20
danke,ich habe das schon vorher gehabt,aber trotzdem danke
Udontknow - Mo 26.05.03 12:23
Wie jetzt? Jetzt bin ich verwirrt. :?!?: Funktioniert es, oder funktioniert es nicht?
Cu,
Udontknow
Jagg - Mo 26.05.03 12:55
ja es geht danke
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!