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

C Discussion :

Langage C : caractéres parasites de fichiers ascii


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    FoxLeRenard
    Invité(e)
    Par défaut Langage C : caractéres parasites de fichiers ascii
    Bonjour.
    Mon probleme est le suivant:
    j'ais un fichier ascii que je reçoit d'une société. format "texte" ....
    En fait il contient des "caractéres de controles", que je sais nettoyer, de façon assez simple, sauf un caractére "0d" qui je crois corespond a un \

    Savez vous comment l'éliminer ?

    Pour plus de précision mes modules sont les suivants:

    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
     
     
    FILE *ptfic;
    int compteur;
    char lire[250],Matable[500][250];
    compteur=0;
     
     
    if((ptfic=fopen("lefichier.txt","r"))!=NULL)
      {
      while (fgets (lire,210,ptfic) != NULL)
        {
         strcpy (Matable[compteur],lire);
         compteur++;
         }
       fclose(ptfic);
     }
     
     
    Et pour ecrire
     
    in a;
    if((ptfic=fopen("lefichier.txt","w"))!=NULL)  fclose(ptfic);
    if((ptfic=fopen("lefichier.txt","a"))!=NULL)
      {
      for (a=0;a<compteur;a++)
          {
         Matable[a][208]=']';
         Matable[a][209]='\0';
         fprintf(ptfic,"%s\n",mondata[a]);
         }
      fclose(ptfic);
      }
    Merci d'avance

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Voilà coment tu peux faire :
    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
    if((ptfic=fopen("lefichier.txt","r"))!=NULL)
      {
       // autant mettre un calcul donnant la taille du buffer
       // plutôt que sa longueur en dur
       // c'est plus souple
      while (fgets (lire,sizeof lire,ptfic) != NULL)
        {
         // le fgets laisse le '\n' dans le buffer de lecture
         // c'est comme celà que l'on sait si le buffer est assez grand
         char *p = strchr(lire, '\n');
         // p contient l'adresse du caractère de fin de ligne ou est NULL
         if (p != NULL)
           *p = 0; // là on efface le '\n' du buffer
         else
         {
            // ici , le '\n' n'est pas dans le buffer lire
            // celà signifie qu'il est trop petit
            // à toi de voir ce que tu veux faire
         }
         strcpy (Matable[compteur],lire);
         compteur++;
         }
       fclose(ptfic);
     }
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    FoxLeRenard
    Invité(e)
    Par défaut
    Mille mercis Trap D

    Simple et efficace avec ça je vais pouvoir intégrer quelque-chose de plus "propre"

    C'est super de simplicité et efficacité

    A+
    FoxLeRenard

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/07/2014, 14h40
  2. Caractère parasite dans un fichier
    Par beuzy dans le forum SAP
    Réponses: 6
    Dernier message: 20/11/2013, 17h01
  3. Caractère parasite dans fichier XML avec XMLEncoder
    Par TOPGUN89 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 08/07/2010, 10h09
  4. [langage] Ajout en debut de fichier
    Par WetzlarMan dans le forum Langage
    Réponses: 4
    Dernier message: 26/04/2004, 11h01
  5. [langage] Problème de taille de fichier à mettre dans
    Par And_the_problem_is dans le forum Langage
    Réponses: 10
    Dernier message: 13/08/2002, 09h41

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