Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi File Rename (https://www.delphipraxis.net/53966-file-rename.html)

-187- 26. Sep 2005 15:29


File Rename
 
Moin, ich hab zwar keine Ahnung obs hier rein passt aber mal sehen :]

Also, ich habe mir gestern mit Hilfe ein paar Membern ein Proggy gebaut welches mir Files umbenannt.


Das ganze funktioniert so:

Ich gebe einen Ordner an und eine beliebige File Endung.Nun klicke einfach nur den Button "Start" !

Jetz werden alle Files in diesem Ordner wie folgt umbenannt:

1.[ext]
2.[ext]
3.[ext]
.
.
.
100.[ext]


[ext] = jpg , exe usw usw


Nun möchte ich aber das es wie folgt ausgegeben wird:

001.[ext]
002.[ext]
003.[ext]
....
010.[ext]
......
100.[ext]

Also es soll immer 3 Stellig bleiben.

Der Source für das ganze is folgender:

Delphi-Quellcode:
begin
  FindAllFiles(path, Edit2.Text, CheckBox1.Checked);
  a := 0;
  for i := 0 to Length(Files) - 1 do
  begin
    repeat
      inc(a);
      if (Edit4.Text = '') then
        ext := ExtractFileExt(Files[i])
      else
        ext := '.'+Edit4.Text;
      temp := ExtractFilePath(Files[i])+Format('%s%d', [Edit3.Text, a])+ext; //Beim Format gehörenglaube ich ein paar Argumente, dass dieführenden nullen passen
    until (not FileExists(temp));
    RenameFile(Files[i], temp);
  end;
  Files := nil;
end;

MFG

Matze 26. Sep 2005 15:48

Re: File Rename
 
So stellst du z.B. immer 3 Stellen ein:

Delphi-Quellcode:
var
  Zahl: integer;
  ErgZahl: string;
begin
  Zahl := 1;
  ErgZahl := Format('%.3d',[Zahl]);

  //ErgZahl enthält hier '001'
Es wird mit führenden Nullen aufgefüllt.

faux 26. Sep 2005 16:07

Re: File Rename
 
Zitat:

Zitat von -187-
Also, ich habe mir gestern mit Hilfe ein paar Membern ein Proggy gebaut welches mir Files umbenannt.

:lol: Im Endeffekt hab dann alles ich gemacht.. :roll:
Da ist ja sogar noch mein Kommentar drinnen... *gg*

Was noch zu beachten wäre:

Du solltest überprüfen wieviele Dateien im Verzeichnis sind, und dann gegebenfalls nicht 001 sondern 00001 oder so schreiben.

Grüße
Faux

himitsu 26. Sep 2005 16:33

Re: File Rename
 
Format('%.3d',[Zahl]); erstellt notfalls auch vier-, fünf-, sechs- ...-stellige Zahlen - nur sind dann halt keine Nullen mehr davor @faux

faux 26. Sep 2005 16:38

Re: File Rename
 
Zitat:

Zitat von himitsu
Format('%.3d',[Zahl]); erstellt notfalls auch vier-, fünf-, sechs- ...-stellige Zahlen - nur sind dann halt keine Nullen mehr davor @faux

Jaja, das ist mir klar, nur sieht das doch seltsam aus, wenn man vorher 001, 002 hat und dann auf einmal 999, 1000, 1001 usw. hat. Dann haben die führenden 0en doch IMHO keinen Sinn...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:26 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