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 :

modification d'un fichier texte


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1
    Par défaut modification d'un fichier texte
    J'ai un fichier texte d'enregistrement de structure avec différents champs
    par exemple:

    1 nom 8_Rue_du_Cocotier produit pays 0
    2 Grandedescente 4_rue_des_roses_55555_rosesvilles produit pays 0
    3 Jaisoif 12_rue_d'amsterdam_11111_joinville produit pays 0
    4 Uneautresvp 25_avenue_de_la_Tournée_22222_Bourgville produit pays 0
    5 gl 7_rue_du_sac produit pays 0

    et je souhaite modifier ce fichier c'est à dire modifier une ligne.
    Comment dois-je proceder?

    Merci!!

  2. #2
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par didy59
    J'ai un fichier texte d'enregistrement de structure avec différents champs
    par exemple:

    1 nom 8_Rue_du_Cocotier produit pays 0
    2 Grandedescente 4_rue_des_roses_55555_rosesvilles produit pays 0
    3 Jaisoif 12_rue_d'amsterdam_11111_joinville produit pays 0
    4 Uneautresvp 25_avenue_de_la_Tournée_22222_Bourgville produit pays 0
    5 gl 7_rue_du_sac produit pays 0

    et je souhaite modifier ce fichier c'est à dire modifier une ligne.
    Comment dois-je proceder?
    • Tu lis le fichier ligne à ligne et tu le recopies dans un autre.
    • Tu profites de ce qu'une ligne est en mémoire pour l'analyser (extraire les données), l'identifier selon le critère que tu as défini, la modifier si c'est bien celle-ci (attention à ne pas écraser les données, ni déborder de la mémoire).
    • Ensuite, tu écris cette ligne modifiée au lieu de l'originale. Tu n'oublies pas de copier les autres lignes jusqu'à l'arrêt de la lecture du fichier original.
    • Enfin, tu fais le ménage avec rename() / remove() ...

    J'espère que tu connais le C...

    Les 4 lignes précédentes sont un 'algorithme textuel' qui décrivent des opérations à réaliser afin de répondre à la question posée, qui n'est rien d'autre qu'une spécification. On est donc en phase de conception.

    Pour le moment, on suit donc le schéma classique spécification/conception/réalisation.

    Pour aller plus loin, et avant de se précipiter sur son IDE favori, il faudrait écrire l'algorithme formel sous forme de pseudo-code, ce qui permettra d'organiser le programme

    - définition des blocs fonctionnels
    - définition des données
    - définition des fonctions

    Ca peut paraitre un peu compliqué, mais c'est une démarche générale qui permet de faire du code réel, et pas de la bidouille de coin de table...

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Salut et bienvenue sur les forums de developpez.com


    Pour rentrer dans le vif du sujet, ce sujet a été maintes fois traité, il faut penser à faire des recherches !
    Bon, pour être plus précis et vu que tu es nouveau ca va pour cette fois donc voici la marche à suivre:

    • Ouverture de ton fichier en lecture
    • Ouverture d'un fichier en écriture
    • Lire une ligne avec fgets
    • Si la ligne que tu viens de lire n'est pas celle à modifier, tu l'écris dans le fichier ouvert en écriture
    • Si tu tombes sur la ligne à modifier, tu écris la nouvelle version de la ligne dans le fichier ouvert en écriture
    • Tu écris le reste ligne par ligne dans le fichier ouvert en écriture



    [ZUT]ED à été plus rapide que moi
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

Discussions similaires

  1. Modification d'un fichier texte
    Par CyberSlan dans le forum C++
    Réponses: 8
    Dernier message: 05/06/2008, 16h20
  2. [AIDE] modification d'un fichier texte
    Par babap1 dans le forum C++
    Réponses: 6
    Dernier message: 16/01/2008, 11h49
  3. Réponses: 50
    Dernier message: 19/10/2007, 23h38
  4. Modification d'un fichier texte
    Par velo83 dans le forum C
    Réponses: 14
    Dernier message: 21/05/2006, 07h28
  5. Réponses: 4
    Dernier message: 21/04/2006, 21h55

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