Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Größe einer Onlinedatei ermitteln (https://www.delphipraxis.net/43003-groesse-einer-onlinedatei-ermitteln.html)

kingflo 27. Mär 2005 12:58


Größe einer Onlinedatei ermitteln
 
Hallo weiß jemand von euch, wie ich die größe einer Datei herrausfinden kann?

z.B auf http://www.seite.de/datei.zip
und label1 soll mir die datei größe anzeigen.

weiß jemand, wie ich das am bessten machen kann?

moritz 27. Mär 2005 13:24

Re: Größe einer Onlinedatei ermitteln
 
Du musst dir mit einem Request die Header der Datei holen, und in denen steht dann in 'Content-Length' die Größe der Datei in Bytes.

Edit:
Nochmal nachgeschaut, du kannst es mit IdHttp machen:
Delphi-Quellcode:
IdHTTP.Head('Dein URL');
ShowMessage(IntToStr(IdHTTP1.Response.ContentLength) + 'Bytes');
Falls du -1 zurück bekommst, wurde von der Seite keine Größenangabe gesendet.

Chewie 27. Mär 2005 13:25

Re: Größe einer Onlinedatei ermitteln
 
Zitat:

Zitat von moritz
Du musst dir mit einem Request die Header der Datei holen, und in denen steht dann in 'Content-Length' die Größe der Datei in Bytes.

Eventuell...

kingflo 27. Mär 2005 14:05

Re: Größe einer Onlinedatei ermitteln
 
danke

Lannes 27. Mär 2005 23:15

Re: Größe einer Onlinedatei ermitteln
 
Hallo,
Zitat:

Zitat von moritz
Falls du -1 zurück bekommst, wurde von der Seite keine Größenangabe gesendet.

Zitat:

Zitat von Chewie
Eventuell....

Hast Du dein Ziel mit "IdHttp" erreicht?
sonst versuch es mal damit:
Delphi-Quellcode:
uses wininet;


Function InternetDateiByts(url: string): string;
var Session, thefile : hInternet;
    index,codelen : Integer;
    code : array[1..20] of char;
    res : pchar;
begin
  if pos('http://',lowercase(url))=0 then url:='http://'+url;
  Session:=InternetOpen('InetURL:/1.0',INTERNET_OPEN_TYPE_PRECONFIG,nil,nil,0);
  if assigned(session) then
  begin
    thefile:=InternetOpenUrl(session, pchar(url), nil, 0, INTERNET_FLAG_RELOAD,0);
    Index:= 0;
    CodeLen:= 10;
    HttpQueryInfo(thefile, HTTP_QUERY_CONTENT_LENGTH, @code, codeLen, Index);
    res:= pchar(@code);
    if (res = '245') then res:= '-1';
    if assigned(thefile) then InternetCloseHandle(thefile);
  end;
  InternetCloseHandle(session);
  GetInternetFileSize:= res;
end;
http://www.seite.de/datei.zip Größe = 5476 Byts :zwinker: richtig :?:


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