Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

fichier vide ou non ?

3 réponses
Avatar
Skander Fekih
Bonjour,

Comment je vais v=E9rifier que mon fichier "exemple.txt" est vide ou non
dans mon programme C sous windows ?

C=E0 ce fait ceci :

#include<stdio.h>

int main()
{
FILE *fp;
char ch;
fp =3D fopen("exemple.txt","r");
ch=3Dfgetc(fp);
if(ch =3D=3D EOF)
printf("fichier est vide");
else
printf("fichier non vide");
return 0;
}


Merci

3 réponses

Avatar
Christian ASTOR
Skander Fekih wrote:

Comment je vais vérifier que mon fichier "exemple.txt" est vide ou non
dans mon programme C sous windows ?
Cà ce fait ceci :
fp = fopen("exemple.txt","r");



Il n'y a pas besoin de l'ouvrir.
Un fichier est vide si sa taille = 0.
Soit on utilise stat() (#include <sys/stat.h>) : stat.st_size,
soit FindFirstFile() : WIN32_FIND_DATA.nFileSizeLow
Avatar
programmation
On 2 août, 20:36, Christian ASTOR wrote:
Skander Fekih wrote:
> Comment je vais vérifier que mon fichier "exemple.txt" est vide ou no n
> dans mon programme C sous windows ?
> Cà ce fait ceci :
> fp = fopen("exemple.txt","r");

Il n'y a pas besoin de l'ouvrir.
Un fichier est vide si sa taille = 0.
Soit on utilise stat() (#include <sys/stat.h>) : stat.st_size,
soit FindFirstFile() : WIN32_FIND_DATA.nFileSizeLow



Salut,

Voici le programme C avec Visual Studio 20008 sous windows :

#include<stdio.h>
#include <sys/stat.h>

int main()
{

int n;
n = stat.st_size("exmple.txt");
if (n == 0)
printf("fichier est vide");
else
printf("fichier non vide");

return 0;
}

Après la compilation, j'ai le message d'erreur suivant ;

1>------ Début de la génération : Projet : jareb, Configuration  :
Debug Win32 ------
1>Compilation en cours...
1>main.c
1>c:documents and settingsadministrateurmes documentsvisual studio
2008projectsjarebjarebmain.c(17) : error C2224: la partie gauche
de '.st_size' doit avoir un type struct/union

1>Le journal de génération a été enregistré à l'emplacement "fi le://c:
Documents and SettingsAdministrateurMes documentsVisual Studio
2008ProjectsjarebjarebDebugBuildLog.htm"

1>jareb - 1 erreur(s), 0 avertissement(s)
========== Génération : 0 a réussi, 1 a échou é, 0 mis à jour, 0 a été
ignoré ==========


Merci.
Avatar
Christian ASTOR
On 4 août, 09:26, programmation wrote:

        int n;
        n = stat.st_size("exmple.txt");



Il faudrait lire la doc, avant d'utiliser une fonction ...
http://www.opengroup.org/onlinepubs/000095399/functions/stat.html