![]() |
Dateiformat und Dateigröße auslesen..
Servus.
ich möchte den Dateiformat und Dateigröße einer Datei auslesen. Wie kann ich das machen, mit den OpenDialog, oda wie??? :wiejetzt: Grüße, NeoDeluxe 8) |
Hallo neoDeluxe,
wenn man mal davon ausgeht, dass Du über den OpenDialog schon mal den vollständigen Pfad und Namen der Datei hast, könntest Du beispielsweise die folgende Funktion nutzen, um die Dateigröße zu ermitteln:
Delphi-Quellcode:
Ungetestet, sollte aber gehen. Ich bin jedoch der Meinung, irgendwo in meiner Delphi6-Hilfe schon eine von Borland vorgefertigte Funktion gesehen zu haben, die die einem gegebenen Dateinamen die Größe liefert.
Function DPGetFileSize( aFilename : String ) : Cardinal;
var aFile : File; oldFMode : Integer; Begin If FileExists( aFilename ) Then Begin oldFMode:= FileMode; FileMode:= fmOpenRead; AssignFile( aFile, 1 ); Result:= FileSize( aFile ); CloseFile( aFile ); FileMode:= oldFMode; End Else Result:= -1; End; Was Du allerdings genau mit Dateiformat meinst, weiss ich nicht so recht. Wenn es Dir nur um das Suffix geht (".PAS" / ".BMP" etc.), dann kannst Du hierzu die Funktion "ExtractFileExt" nutzen. |
Zitat:
Delphi-Quellcode:
if OpenDialog.Execute then
label1.Caption."hier muss was sein womit ich die Infos auslese oder?"; Zitat:
Grüße, NeoDeluxe 8) |
Hallo NeoDeluxe,
also mit dem Open-Dialog geht das wie folgt:
Code:
Das funktioniert zumindest so lange, wie Du in Deinem Dialog nur eine Datei zur Auswahl zulässt.
[b]If [color=#ff0055]OpenDialog1.Execute[/color] Then[/b]
[b]Begin[/b] myFileSize:= DPGetFileSize( [color=#ff0055][b]OpenDialog1.FileName[/b][/color] ); [b]End;[/b] Der Name einer Datei steht nicht zwingend in einer festen Verbindung zum Format dieser Datei. Hieraus Rückschlüsse ziehen zu wollen kann in einigen Situationen gefährlich in die Hose gehen. Vielleicht magst Du uns zu Deiner Frage nach dem Dateiformat nähere Infos gehen...? |
Zitat:
Grüße, NeoDeluxe 8) |
Hi NeoDeluxe,
versuch es mal mit der:
Delphi-Quellcode:
Gruß oki
Function FileGetAttr(const FileName: string): Integer;
Edit: Ups, hab zwischendurch was anderes gemacht und alle vorherigen Beiträge nicht mitbekommen. Meine Variante gibt dir alle nötigen Dateiinfos (Größe, Atribute etc.). Für das Dateiformat sehe ich nur die Lösung über die File-Extention. Was besseres fällt mir jetzt auch nicht ein. |
Ich persöhnlich bevorzuge folgenden source für die dateigrösse zu ermitteln:
Code:
Warum ich den nehm? kA .. :>
function GetFileSize(Filename: string): integer;
var SR: TSearchRec; begin if FindFirst(Filename, faAnyFile, SR) = 0 then begin Result := SR.Size; end else begin Result := -1; end; FindClose(SR); end; Das ganze noch in einem Label anzeigen lassen:
Code:
Der letzte Source habsch nu einfach ausm Kopf geschrieben, ohne zu testen, sollte aber kein fehler drinnen sein.
Label1.Caption := 'Die Datei' + Dateiname + 'hat ' + (GetFileSize(dateiname) / 1024) + 'kb';
|
Zitat:
Bekomme fehler, dass es unbekannt ist... Grüße, NeoDeluxe 8) |
hrhr Dateiname ist die Variable :>
Wenn du es mit einem Opendialog machst musst du anstelle von dateiname folgendes verwenden:
Code:
OpenDialog1.FileName
|
Zitat:
Grüße, NeoDeluxe 8) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:36 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