tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
314
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Cromon Cromon ist offline Mitglied Brillant
    Registriert seit
    Apr 2008
    Beiträge
    819
    Hallo zusammen!

    Ich möchte gerne eine Liste mit Dateien nach einem speziellen Kriterum soriteren. Diese Dateien sind alle vom Format:
    lib-*.av

    Zwischen - und . steht nur 1 Zeichen oder 1 Zahl. Ich erstelle jetzt so meine Liste:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    String^ dataPath = basePath + "data";
    array<String^>^ files = Directory::GetFiles(dataPath, "lib-*.av");
    List<String^>^ validPatches = gcnew List<String^>();
    Regex^ reg = gcnew Regex("lib-[a-zA-Z0-9].av", RegexOptions::IgnoreCase);
     
    for each(String^ file in files)
    {
        if(reg->IsMatch(file))
            validPatches->Add(file);
    }

    Die Einträge in validPatches müssen jetzt aber korrekt sortiert werden. Das Kriterium sieht folgendermassen aus:
    1. Absteigend sortiert
    2. Zu unterst müsste lib-0.av stehen
    3. Zu oberst müsste lib-Z.av stehen

    Also: Zeichen ist weiter am Anfang (=kleiner?) als Zahl und grosser Buchstaben ist weiter am Anfang als kleiner Buchstaben.

    Ich habe validPatches->Sort probiert mit einer Instanz des delegats System::Comparison<String^> allerdings wurde da ständig eine Exception geworfen wenn ich ausser String::Compare zurückzugeben irgendeine andere Aktion ausgeführt habe.

    Was gibt es für Ansatzmöglichkeiten um die zu bewerkstelligen?

    Gruss
    Cromon
     

  2. #2
    Avatar von Spyke
    Spyke Spyke ist offline Capoeirista
    Registriert seit
    Oct 2002
    Beiträge
    931
    Was für eine Exception genau?
    Wie schon richtig erkannt einfach von Comparer ableiten oder per delegate Comparison die Sortierung festlegen.
    Vielleicht zeigst du einfach mal wie du sortieren wolltest.

    Ansonsten ist der Comparer ja relativ einfach man muss nur -1, 0 oder 1 zurückgeben jenachdem welches Element oben stehen soll (wobei ichs auch immer wieder gern verwechsle )
     
    www.iv-interactive.de - Projektewebsite
    WikiParser - aktuelles Projekt

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 24.09.08, 00:10
  2. Excel Liste Sortieren
    Von Saban im Forum Office-Anwendungen
    Antworten: 4
    Letzter Beitrag: 19.05.08, 09:30
  3. Einträge in Liste Sortieren
    Von TheLuCKer im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 08.09.04, 21:59
  4. Tabellen includen aber nach Kriterium
    Von FaBoW im Forum PHP
    Antworten: 20
    Letzter Beitrag: 13.07.04, 19:10
  5. [Access] Im Bericht Felder nach Kriterium ausblenden
    Von Wolfsbein im Forum Office-Anwendungen
    Antworten: 0
    Letzter Beitrag: 07.09.02, 13:21