Einzelnen Beitrag anzeigen

Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Datein durchnummeriert speichern

  Alt 3. Jun 2014, 16:47
Hallo,

ich hatte mal die gleiche Anforderung.

Ich hab´s so gelöst, dass ich prüfe, ob der Dateiname (inkl. der Nummerierung) vorhanden ist.
Ist der Dateiname vorhanden, zähl ich hoch und prüf wieder, bis der Dateiname nicht mehr
vorhanden ist. Das ist dann der nächst freie Dateiname.

Hier mal mein Code:
Delphi-Quellcode:
function SicherungName(Pfad, DateiName, Endung: String): String;
var
  i: Integer;

begin
  //Variablen vordefinieren
  Result := '';
  i := 1;

  //Pfad mit einem Backslash enden lassen
  Pfad := IncludeTrailingPathDelimiter(Pfad);

  while true do
    begin
      //Dateinamen zusammenstellen
      Result := Pfad + Format('%s%.3d.%s', [DateiName, i, Endung]);

      //wenn Datei nicht vorhanden, dann Schleife beenden
      If not FileExists(Result) then
        break;

      inc(i);
    end;
end;
Hat nur einen Schönheitsfehler. Löscht man eine Datei mit kleiner Nummer, so
wird automatisch aufgefüllt. Z. B. es gibt Test01, Test02 und Test03 und man
löscht Test02, so wird beim nächsten Speichern in Test02 und dann wieder ab
Test04 gespeichert.
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat