Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Dateigröße abfragen (https://www.delphipraxis.net/89936-dateigroesse-abfragen.html)

Tommy1988 8. Apr 2007 22:32


Dateigröße abfragen
 
Ich verzweifle langsam..

wie kann ich die Dateigröße AUS EINEM EDIT in einem Label ausgeben lassen?


Bitte postet NICHT nur eine dumme Fuktion, bitte erklärt auch wie ich sie anwende :cry:

mkinzler 8. Apr 2007 22:34

Re: Dateigröße abfragen
 
Wie meinst du Dateigröße aus Edit?

Tommy1988 8. Apr 2007 22:45

Re: Dateigröße abfragen
 
ich öffne einen dialog, nach dessen schließen
steht die gewählte datei im Edit1-Feld

Delphi-Quellcode:
OpenDialog1.Execute;
Edit1.Text := OpenDialog1.FileName;
Delphi-Quellcode:
Label1.Caption := (IntToStr( GetFileSizeA(''+Edit1.Text+'') ));
Die Dateigröße wird ins Label geschrieben. aber in BYTES..

soweit bin ich zum glück, aber wie bekomme ich aus den Bytes Kilobytes?

--------------

Delphi-Quellcode:
var
byte, umrechnen, kb, ergebnis : String;
...
byte := (IntToStr( GetFileSizeA(''+Edit1.Text+'') ));

kb := IntToStr(1024);

umrechnen := byte*IntToStr(kb);

Label1.Caption := umrechnen;
das funktioniert leider nicht..

bttb930 8. Apr 2007 22:52

Re: Dateigröße abfragen
 
Delphi-Quellcode:
var
vorher, nachher: Integer;
...
vorher := GetFileSizeA(Edit1.Text);
nachher := vorher div 1024;
Label1.Caption := IntToStr(nachher);

mkinzler 8. Apr 2007 22:53

Re: Dateigröße abfragen
 
Delphi-Quellcode:
kb: Integer;

kb := GetFileSizeA+Edit1.Text) DIV 1024;
Label1.Caption := IntToStr( kb);

Tommy1988 8. Apr 2007 22:55

Re: Dateigröße abfragen
 
Delphi-Quellcode:
[Fehler] Unit1.pas(105): E2010 Inkompatible Typen: 'string' und 'Integer'
da fehlte noch etwas. aber trotzde. vielen dank an alle!

Delphi-Quellcode:
Label1.Caption := [b]IntToStr(nachher)[/b];

schrimm 8. Apr 2007 23:16

Re: Dateigröße abfragen
 
Ich würde mich hier gerne mal einmischen.
Das Problem scheint ja gelöst zu sein, ich hab aber ein problem:
der kennt GetFileSizeA nicht!!
ist das irgend etwas spezielles, was du selber geschrieben hast, oder was es in delphi 5 nich ni gibt?

mkinzler 8. Apr 2007 23:21

Re: Dateigröße abfragen
 
Es handelt sich hier um eine Windows-Funktion. Sie müsste sich in SysUtils befinden

Matze 8. Apr 2007 23:21

Re: Dateigröße abfragen
 
Zitat:

Zitat von schrimm
der kennt GetFileSizeA nicht!!
ist das irgend etwas spezielles, was du selber geschrieben hast, oder was es in delphi 5 nich ni gibt?

Meine 2006er OH kennt diese auch nicht, aber laut obigem Code müsste das genauso mit

Delphi-Quellcode:
function FileSize(var F: file): Integer;
gehen.


Edit: Ok, ich nehme alles zurück. :oops:

Hawkeye219 8. Apr 2007 23:27

Re: Dateigröße abfragen
 
Hallo,

gesucht - gefunden: klick

Aber Vorsicht, die Funktion liefert nur Dateigrößen bis ca. 2 GByte!

Gruß Hawkeye

Tommy1988 9. Apr 2007 10:37

Re: Dateigröße abfragen
 
Hallo, ich habe ein kleines Problem..

ich möchte hierdurch DateiName, Ordner und Laufwerk auf 3 lablels verteilen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  DirPart, FilePart: String;
  DrivePart: Char;
const
  Path = Edit1.Text;
begin
  if not FileExists(Path) then Exit;

  ProcessPath(Path, DrivePart, DirPart, FilePart);

     // Variableninhalte:
  Label4.Caption := 'Dateiname: ' + FilePart +'';
  Label5.Caption := 'Ordner: ' + DirPart + ^j +'';
  Label6.Caption := 'Laufwerk: ' + DrivePart + ^j +'';

end;
Das Problem an der ganzen sache ist, dass ich bei Path gerne die variable die den path beinhaltet (Edit1) stehen hätte

Nur wenn ich
Delphi-Quellcode:
  Path = Edit1.Text;
schreibe, meckert delphi.. er will einen konstanten ausdruck haben?

mkinzler 9. Apr 2007 10:40

Re: Dateigröße abfragen
 
Delphi-Quellcode:
Path := Edit1.Text;
Wo/wie ist Path deklariert?

Tommy1988 9. Apr 2007 10:41

Re: Dateigröße abfragen
 
ich klicke einen button daraufin passiert das hier:

Delphi-Quellcode:
OpenDialog1.Execute;
Edit1.Text := OpenDialog1.FileName;
dialog öffnet sich, markierte datei wird mit dem kompletten pfad ins Edit1 geschrieben.

und diesen text aus edit1 möchte ich für diesen Path eben benutzen


EDIT:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
DirPart, FilePart: String;
DrivePart: Char;
const
  Path = ''+Edit1.Text+'';

....

mkinzler 9. Apr 2007 10:46

Re: Dateigröße abfragen
 
Konstanten sind konstant, nimm ne lokale Variable
Delphi-Quellcode:
var
 Path: string;
...
Path := Edit1.Text;
Btw.
Delphi-Quellcode:
''+Edit1.Text+''
ist das Selbe wie
Delphi-Quellcode:
Edit1.Text

DP-Maintenance 9. Apr 2007 13:01

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Es geht um Delphi.


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