C - filelength de plus de 4GB

C - filelength de plus de 4GB - C - Programmation

Marsh Posté le 26-03-2007 à 10:45:07    

Bonjour,
 
je cherche à lire la taille de fichiers de plus de 4GB (jusqu'à 8GB enfait); or il s'avère que la fonction filelength est limitée par 32bits, soit 4GB
donc quand je cherche à lire la taille d'un fichier de plus de 4GB, il m'indique automatiquement 4GB, ce qui est logique.
 
existe t-il une fonction équivalente permettant de passer outre cette limitation?
 
merci d'avance!

Reply

Marsh Posté le 26-03-2007 à 10:45:07   

Reply

Marsh Posté le 26-03-2007 à 13:23:00    

Avec quel système d'exploitation ?
 
Sous Windows, il y a _filelengthi64(), dont on peut voir le prototype dans <io.h>, pour toutes les versions de Windows depuis Windows 95.
On a aussi un _fseeki64() et un _ftelli64() qui se trouvent dans <stdio.h>
 
 

Reply

Marsh Posté le 26-03-2007 à 17:19:35    

super merci bcp (oui sous winxp)

Reply

Marsh Posté le 28-03-2007 à 15:38:33    

Existe-t-il de telles fonctions sur un systeme linux ?
 
J'ai entendu parler de fseek64() et ftell64() , mais je n'arrive pas à trouver plus d'info la-dessus. Pas de man page, si sur google :( Peut etre faut-il une bibliothèque particuliere ?
 
 
merci :)
 
Edit : ok trouvé. Enfait, il s'agit des fonctions fseeko64() et ftello64(). Bizarre, ce n'est pas super documenté :(


Message édité par xilebo le 28-03-2007 à 20:58:47
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed