Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Stringlist Sortieren (https://www.delphipraxis.net/175648-stringlist-sortieren.html)

xan553 6. Jul 2013 09:49

Stringlist Sortieren
 
Hallo alle zusammen,

ich habe ein Programm in dem ich Dateien aus einem Opendialog in eine Stringlist ausgebe und die soll dann sortiert werden.

mit stringlist.sort sieht das ja so aus:

1
11
2
22
3
33
4
44

ich bräuchte es aber in dieser form:

1
2
3
4
11
22
33
44

und wenn möglich auch so

1-99
a1-99
b1-99

also wenn die zahlen von 1 bis 99 durchlaufen sind alle mit dem buchstaben a vorne dran von 1 bis 99 etc.

gibt es da eine lösung?

Mfg

mkinzler 6. Jul 2013 10:15

AW: Stringlist Sortieren
 
Im ersten fall werden einfach die Strings sortiert. Im 2. Fall die Zahlen im String.
Du musst einfach eine eigene Vergleichsfunktion für die Sortierung implementieren. Damit wäre (mit erheblich höheren Aufwand) auch 3. möglich.

xan553 6. Jul 2013 11:19

AW: Stringlist Sortieren
 
ok also kann ich wenn ich die dateinamen habe zum beispiel 3600 und 3700 dann kann ich sie ja ganz simpel vergleichen mi <> aber wie kann ich sie in der stringlist einer bestimmten position zuweisen also wenn am anfang:

3700
3600

in der stringlist steht wie kann ich die zahlen dann den jeweiligen plätzen zuweisen?

gibt es alternative lösungen zum beispiel mit irgendwelchen anderen elementen die es mir erleichtern?

mkinzler 6. Jul 2013 11:22

AW: Stringlist Sortieren
 
Du musst nur eine Vergleichsfunktion implementieren diese du dann im Aufruf von .CustomSort() als Parameter mitgibst.

fl63 7. Jul 2013 16:50

AW: Stringlist Sortieren
 
Hallo!

Gib doch mal in der Suchfunktion (Stringlist, natürliche Sortierung ) ein. Vielleicht hilft dir das.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz