Je voudrai savoir s'il existe une fonction
permettant en C de récupérer la taille en octets
d'un fichier.
Ca existe ou est-ce qu'il faut se galérer avec
un 'ls -l' dans un popen ??
Merci.
Publicité
Posté le 01-02-2004 à 18:18:47
chaica
Posté le 01-02-2004 à 18:20:23
la structure stat te permet d'obtenir tous les renseignemnts relatifs au fichier.
man stat.
Taz
bisounours-codeur
Posté le 01-02-2004 à 18:21:34
mais c'est pas ANSI. sinon tu vas à la fin du fichier et tu mesures l'offset
gilou
Modérateur Modzilla
Posté le 01-02-2004 à 20:04:36
Bref, un truc comme ça... en oubliant pasle bon include.
Code :
long get_filesize(char *filename)
{
struct stat file;
return (stat(filename,&file)?0:file.st_size);
}
A+,
Message édité par gilou le 01-02-2004 à 20:05:01
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --
Taz
bisounours-codeur
Posté le 01-02-2004 à 20:18:30
const
ndmax
Posté le 02-02-2004 à 01:04:53
OK, très bien, merci.
Je vais tester.
Je ne savais pas que l'on pouvait le récupérer
avec la fonction stat. C'est cool, comme j'utilise
déjà ça dans mon prog, ya qu'à rajouter une ligne.
Merci bien!
Taz
bisounours-codeur
Posté le 02-02-2004 à 02:43:57
au fait c'est unsigned long, pas long
et je ne parle pas des version 64bits
enfin c'est le bordel, avec les gros fichier voir fseeko/ftello
fseeko? fseeko? fsicko, ouais!
A+,
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --
ndmax
Posté le 02-02-2004 à 19:27:10
Oui, justement, je voulais vous demander le bon type..
Dans le man de stat, c'est bien un off_t.
Mais comment le stocker dans une structure ??
Il faut déclarer un unsigned long et caster la taille ??