c++ : lire un fichier après modifications
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

c++ : lire un fichier après modifications



  1. #1
    poolpool

    c++ : lire un fichier après modifications


    ------

    Bonjour,

    Je cherche à créer une tâche de fond dans un programme c++ afin de lire un fichier dès que celui ci a été modifié.

    Si quelqu'un peut m'apporter son aide.

    Merci par avance.

    -----

  2. #2
    sandrecarpe

    Re : c++ : lire un fichier après modfications

    Salut,
    Sur Unix tu as iNotify pour surveiller des évènement sur des fichiers ou répertoires

  3. #3
    pm42

    Re : c++ : lire un fichier après modfications

    Citation Envoyé par poolpool Voir le message
    Je cherche à créer une tâche de fond dans un programme c++ afin de lire un fichier dès que celui ci a été modifié.
    Par tâche de fond, tu veux dire quoi ? Thread ? Un autre process ?
    Sinon comment vas tu détecté que le dit fichier a été modifié ? Sur Windows et OSX, tu as des API mais ce n'est pas la même. Sur Linux, c'est encore une autre histoire.
    Ou alors, il faut vérifier à intervalle régulier.

    Il est possible d'utiliser des frameworks qui font ça. Tu as pas mal d'infos ici : http://stackoverflow.com/questions/9...ification-in-c

  4. #4
    poolpool

    Re : c++ : lire un fichier après modfications

    Pour être plus précis, je suis sous linux ubuntu.
    J'ai un programme en c++ qui doit lire un fichier de données .txt dès que celui ci est mis à jour par un autre fichier.

  5. A voir en vidéo sur Futura
  6. #5
    poolpool

    Re : c++ : lire un fichier après modfications

    Merci pour l'info
    J'ai bien installer incrom mais pourtant la fonction ne fonctionne pas malgré l'autorisation du user :

    /home/user/user/travail/essai/positions.txt IN_MODIFY /home/user/Player-stage/worlds/yoyo.sh

  7. #6
    invite1c6b0acc

    Re : c++ : lire un fichier après modfications

    Bonjour

    La fonction stat() permet de connaître la date de dernière modification du fichier.
    Tu la lances dans une boucle, par exemple toutes les secondes, et tu lis le fichier quand elle change.

  8. #7
    polo974

    Re : c++ : lire un fichier après modfications

    parfois, il vaut mieux attendre que "l'autre" ait fermé le fichier avant d'aller le lire, ceci évite des lectures partielles répétitives, mais il faut être sur que "l'autre" ne garde pas le fichier ouvert...

    maintenant, la communication/signalisation par fichiers interposés, ça fait un peu dépassé...
    Jusqu'ici tout va bien...

  9. #8
    poolpool

    Re : c++ : lire un fichier après modfications

    Merci de vos réponses.

    J'ai réussi avec la fonction stat();

    si le fichiers à été modifié,alors je lis son contenu.

  10. #9
    Ikhar84
    Animateur Informatique

    Re : c++ : lire un fichier après modfications

    Comme dit plus haut, cela ne fait pas très propre, principalement au vu des risques d'accès concurrentiels, principalement lorsque le fichier est en cours de lecture, et qu'une opération d'écriture se lance, les données recueillies par la lecture risqueront de ne plus être les mêmes entre le début et la fin de la lecture, avec même un possible lock pendant l'écriture qui va entrainer l'instabilité du processus lecteur, si ce problème n'est pas géré.
    On ne connait pas la méthode d'accès en écriture...

    Pour limiter les dégâts (d'autres confirmeront, ou corrigeront je l'espère) pourquoi ne pas copier le fichier (dans un fichier temporaire), et de n'effectuer la lecture que sur ce fichier, avant de le supprimer ?

    Cela ne résoudra pas tous les problèmes, mais pourra limiter les dégats, puisque vous ne précisez pas si vous avez la main sur le code du processus qui écrit les données dans le fichier.

Discussions similaires

  1. PC qui s'eteint tout seul apres de serieuse modifications hardware
    Par invite32a0740b dans le forum Matériel - Hardware
    Réponses: 41
    Dernier message: 09/07/2015, 23h53
  2. fichier a lire
    Par inviteb4450379 dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 26/06/2011, 23h48
  3. Lire un fichier .isd
    Par invitee0a22fa7 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 23/09/2010, 15h20
  4. Lire un fichier .BIN avec Matlab converti d'un fichier .WAV
    Par invite45d1502e dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 03/05/2008, 17h13
  5. lire un fichier
    Par invite3ff396ad dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 16/02/2008, 23h41