![]() |
Ordnerstruktur abbilden
Hi Zusammen
Mein Programm soll später eine gesamte Ordnerstruktur in eine Datei speichern. Ähnlich wie CMD -> TREE nun sollen aber alle Ordner- und Dateigrössen ebenfalls gespeichert werden. Mit welchen mitteln kann ich das effizient und sauber lösen? bitte um eine etwas Detailierte Antwort, da ich keinen schimmer davon habe wie ich das anstellen soll. Bin aber um jeden Gedankenanstoss sehr froh... Na dann.. schönes Wochenende, und bitte meine Not nicht vergessen^^ LG Raphael |
Re: Ordnerstruktur abbilden
Hi,
Dateiegrößen ermitteln kann man hiermit (in der Delphi-Hilfe gefunden):
Delphi-Quellcode:
Gruß
procedure TForm1.btnClick(Sender: TObject);
var iFileHandle: Integer; iFileLength: Integer; begin iFileHandle := FileOpen('C:\test.txt', fmOpenRead); iFileLength := FileSeek(iFileHandle,0,2); ShowMessage(iFileLength); end; |
Re: Ordnerstruktur abbilden
hallo cherry,
spontan würde mir dazu einfallen, eine Komponente zu nehmen, wie man sie zum packen von Dateien braucht. Dort ist es ja fast immer möglich, ganze Verzeichnisbäume mit Dateiinfos in einer Datei abzuspeichern. Schau doch mal auf torry.net nach Komponenten, selbst wenn du sie nicht benutzen willst, könntest du dir anschauen, wie man so was effizient umsetzt und daraus lernen. Gruß Pfoto |
Re: Ordnerstruktur abbilden
hab grad nochmal mehrere Wege gefunden, und zwar in unserer gut sortierten :dp:-CodeLib [cl]Dateigröße[/cl]
Gruß |
Re: Ordnerstruktur abbilden
Am Besten in einer XML-Datei speichern.
Das könnte so aussehen:
XML-Code:
<?xml version="1.0" encoding="utf-8" ?>
<Snapshot> <dir name="\"> <file name="autoexec.bat" size="259" timestamp="2005-03-09" /> <dir name="Windows"> <file name="win.ini" size="1311" timestamp="2005-03-09" /> <file name="update.log" size="45517" timestamp="2007-03-12" /> </dir> </dir> </Snapshot> |
Re: Ordnerstruktur abbilden
in XML speichern finde ich eine gute Idee...
also mein Problem sind auch nicht die Dateien, sondern die Ordner... Alles was ich jetzt noch unbedingt wissen sollte ist, wie ich eine Ordnergrösse ermitteln kann, Dateigrössen sind kein Problem, aber eben Ordnergrössen! Als ich es so versuchte, ergab die Grösse immer 0! muss ich zuerst alle dateigrössen in diesem Ordner und dessen Unterordnern zusammenzählen oder wie jetzt??? |
Re: Ordnerstruktur abbilden
Zitat:
|
Re: Ordnerstruktur abbilden
na super! :evil:
Danke trotzdem euch allen.. :-D |
Re: Ordnerstruktur abbilden
Hallo,
natürlich kann man die einzelnen Dateigrößen rekursiv ermitteln und akkumulieren. Manchmal ist es aber ganz angenehm, wenn man andere für sich arbeiten lässt:
Delphi-Quellcode:
Grüße vom marabu
function FolderSize(fn: TFileName): Int64;
var fs, fo: OleVariant; begin if DirectoryExists(fn) then begin fs := {ComObj.}CreateOleObject('Scripting.FileSystemObject'); fo := fs.GetFolder(fn); Result := fo.Size; end else Result := -1; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz