IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

Tester si un fichier est vide


Sujet :

Contribuez

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Tester si un fichier est vide
    Bonjour à tous,

    Je suis amylton, nouveau sur ce site et je compte contribué au langage C en proposant des codes sources tant simple que complexe. Pour résumer, étant débutant en langage C, j'ai décidé, au lieu de chercher des exemples de projets à réaliser qui me prendraient tout mon temps, de faire un site qui regroupe des programmes en C que j'ai réalisé(le lien est ici http://codeplus.e-monsite.com/).

    Pour commencer, un petit programme qui teste si un fichier est vide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
     
    int testSiFichierVide(FILE* fichier)
    {
        int caracterePremier = 0;
     
        //On lit le prmeier caractère du fichier
        caracterePremier = fgetc(fichier);
        if(caracterePremier==EOF)
        {
            return 1;//le fichier est vide donc on retourne 1
        }
        return 0;//le fichier n'est pas vide donc on retourne 0
    }
     
    int main(int argc, char *argv[])
    {
        FILE* fichier = NULL;
     
        fichier = fopen("test.txt", "r");
     
        if (fichier != NULL)
        {
            if(testSiFichierVide(fichier)==1)
            {
                printf("Le fichier est vide");
            }
            else
            {
                printf("Le fichier n'est pas vide");
            }
            fclose(fichier);
        }
        else
        {
            // On affiche un message d'erreur si on veut
            printf("Impossible d'ouvrir le fichier test.txt");
        }
     
        return 0;
    }
    Qu'en pensez-vous?

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 368
    Points : 23 620
    Points
    23 620
    Par défaut
    Bonjour et bienvenue,

    Sans vouloir tuer une vocation dans l'œuf, cette méthode a l'intérêt de se cantonner au C standard strict, mais est peu efficace à l'usage et surtout, elle risque d'engendrer beaucoup d'effets de bord. Il vaut mieux, dans ce cas, faire de la programmation système en utilisant les fonctions de son O.S.

    On en discutait notamment ici : http://www.developpez.net/forums/d64...-fichier-vide/

    Bon courage pour la suite.

  3. #3
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Salut !

    L'idée est bonne quand on débute : faire des petites fonctions simples mais efficaces pour se construire une "bibliothèque" pour ses futurs programmes et pour s'entrainer. Sauf que souvent quand on commence (et même après en fait...), pas facile de faire des codes robustes, portables et complets. J'ai regardé un peu ton site, on voit des choses que font les débutants (comme des scanf pour récupérer les choix des utilisateurs : pratique et simple mais pas du tout robuste). N'hésite pas avec le temps à compléter et modifier tes sources et demander des conseils.

    Bon courage

Discussions similaires

  1. Tester si un fichier est vide + recup valeur dans ce fichier
    Par Johann7751 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 26/02/2009, 15h51
  2. [Shell] Tester si un fichier est vide
    Par Spitfire378 dans le forum Linux
    Réponses: 3
    Dernier message: 10/02/2008, 12h18
  3. [VB 6.0] Tester si un fichier est vide
    Par maxou75 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 19/12/2006, 18h06
  4. Tester si un fichier est vide ?
    Par stepd dans le forum Réseau
    Réponses: 15
    Dernier message: 27/07/2006, 19h04
  5. Ksh - tester si un fichier est vide ou pas?
    Par mzt.insat dans le forum Linux
    Réponses: 1
    Dernier message: 25/04/2006, 14h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo