Einzelnen Beitrag anzeigen

Nico B.

Registriert seit: 16. Okt 2006
Ort: Riesa
67 Beiträge
 
Delphi XE7 Enterprise
 
#21

AW: Dateinamen auslesen und sortieren

  Alt 11. Apr 2023, 07:12
Hallo zusammen,

dann hier mal mein Code.
Ich muss dazu sagen, dass ich an einem Rechner programmiere, der nicht mit dem Internet verbunden ist.
Ich habe mir zwar beim Abschreiben Mühe gegeben, kann aber nicht ausschließen, dass sich ein Tipp-Fehler eingeschlichen hat.

Delphi-Quellcode:
function Sortierfunktion(Liste: TStringList; Index1: integer; Index2: integer): integer;
begin
  Result:=String.Compare(Liste[Index1],Liste[Index2],[coDigitAsNumbers,coIgnoreCase]);
end;

function AnlagenAuslesen: boolean;
var
  Anlage: TSearchRec;
  DateiListe: TStringList;
  i: integer;
begin
  Result:=true;
  DateiListe:=TStringList.Create;
  DateiListe.Sorted:=true;
  try
    if FindFirst(ExtractFilePath(ParamStr(0)),faAnyFile,Anlage)=0
      then
        try
          begin
            //alle Dateien auslesen
            repeat
              if Anlage.Attr AND faDirectory=faDirectory
                then
                  begin
                    //nichts tun
                  end
                else
                  begin
                    DateiListe.Add(Anlage.Name);
                  end;
            until FindNext(Anlage)<>0;
            //Dateien sortieren
            DateiListe.CustomSort(@Sortierfunktion);
            //Dateien in der richtigen Reihenfolge auslesen
            i:=0;
            while not (DateiListe.Count=i) do
              begin
                DateiAuslesen(ExtractFilePath(ParamStr(0))+DateiListe[i]); //weitere Funktion zum Auslesen der Dateien
                i:=i+1;
              end;
          end;
        finally
          DateiListe.Free;
          FindClose(Anlage);
        end;
  except
    Result:=false;
  end;
end;
Nico Bäger
  Mit Zitat antworten Zitat