Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1702 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] Récupérer la taille d'un (gros) fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi] Récupérer la taille d'un (gros) fichier

n°388567
Kyle_Katar​n
Posté le 09-05-2003 à 18:25:31  profilanswer
 

Comment faire pour récupérer la taille de "c:\monfichier.ext", si possible dans un Int64 (où, si c'est trop dur, dans un longword) ?


Message édité par Kyle_Katarn le 09-05-2003 à 18:26:17
mood
Publicité
Posté le 09-05-2003 à 18:25:31  profilanswer
 

n°390585
ndmax
Posté le 12-05-2003 à 15:53:05  profilanswer
 

Je souhaiterais savoir exactement la même chose..
 
SVP! Merci.

n°390602
Kyle_Katar​n
Posté le 12-05-2003 à 16:02:09  profilanswer
 

donc .... UP !

n°390606
antp
Super Administrateur
Champion des excuses bidons
Posté le 12-05-2003 à 16:03:12  profilanswer
 

tu l'ouvres avec un TFileStream ou THandleStream * puis tu récupères la taille via .Size
 
* : THandleStream si comme moi tu ouvres ton fichier avec la fonction CreateFile de l'API Windows. Tu peux aussi utiliser GetFileSize à la place du THandleStream, mais il te renvoie la taille sur deux DWORD, ce qui est pas très pratique :D


Message édité par antp le 12-05-2003 à 16:05:09

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°390608
ndmax
Posté le 12-05-2003 à 16:04:49  profilanswer
 

J'ai vu un truc ici :
http://www.delphifr.com/article.aspx?Val=254
 
Sinon, apparemment il y a une fonction FileSize
mais le fichier doit être ouvert ..??  :??:  
 

n°390610
antp
Super Administrateur
Champion des excuses bidons
Posté le 12-05-2003 à 16:05:53  profilanswer
 

Ndmax a écrit :

Sinon, apparemment il y a une fonction FileSize


 
il a précisé qu'il le voulait sur un Int64 :D (donc possibilité de lire les tailles > 2 Go)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°390615
Kyle_Katar​n
Posté le 12-05-2003 à 16:08:06  profilanswer
 

antp a écrit :


 
il a précisé qu'il le voulait sur un Int64 :D (donc possibilité de lire les tailles > 2 Go)


 
Merci ANTP !
 
(j'avais trouve avec FindFirst entre temps qui semble donner la même chose, 2 32 bits (high/low) à combiner pour faire un 64)

n°390619
antp
Super Administrateur
Champion des excuses bidons
Posté le 12-05-2003 à 16:11:13  profilanswer
 

Ha ? possible, c'est vrai que c'est peut-être plus simple comme méthode alors...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°390621
ndmax
Posté le 12-05-2003 à 16:13:48  profilanswer
 

Désolé antp..
 
Kyle_Katarn >> c'est quoi ta méthode ??

n°390817
Kyle_Katar​n
Posté le 12-05-2003 à 19:09:00  profilanswer
 

Code :
  1. function TailleFichier(fic:string):Int64;
  2. var
  3.   rec:TSearchRec;
  4. begin
  5.   if FindFirst(fic,faAnyFile,rec)=0 then
  6.     Result:=Int64(rec.FindData.nFileSizeLow)
  7.   else
  8.     Result:=0;
  9. end;


 
Là je ne prend que le 32bits low, il faudrait multiplier par 2^32*le high

mood
Publicité
Posté le 12-05-2003 à 19:09:00  profilanswer
 

n°390859
zion
Plop
Posté le 12-05-2003 à 19:42:44  profilanswer
 


Et un leak, un  :fou:
 
FindFirst -> FindClose


---------------
Informaticien.be - Lancez des défis à vos amis
n°390885
antp
Super Administrateur
Champion des excuses bidons
Posté le 12-05-2003 à 20:08:28  profilanswer
 

Ouais puis le string qui est pas passé en const, et le formattage du code non conforme, c'est pas bien tout ça :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°390892
Kyle_Katar​n
Posté le 12-05-2003 à 20:11:56  profilanswer
 

ok, je débute !

n°391029
ndmax
Posté le 12-05-2003 à 22:00:11  profilanswer
 

OK, merci!
Moi j'ai utilisé rec.Size tout simplement
car mes fichiers sont très en dessous de
la limite des 2Go pour les Integer.
 
Merci.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] Récupérer la taille d'un (gros) fichier

 

Sujets relatifs
[php] Obtenir le contenu d'une ligne précise d'un fichierRécuperer la taille des dossiers pour examiner l'evolution
Upload de fichier sans remplacement du ficher existant ?[opengl]une erreur a la compil, ai-je oublié un fichier d'en-tête ?
[JAVA] [Résolu] Comment récuperer la position de la souris ?[C]Taille de chaine de caractères dynamique...
Comment effacer le contenu d'un fichier texte???y a-t-il une taille limite pour un .string ou un .ascii?
Delphi 8 
Plus de sujets relatifs à : [Delphi] Récupérer la taille d'un (gros) fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR