#1 Le 27/11/2008, à 11:49
- YoOm
Modification d'un fichier déjà ouvert
Bonjour,
J'écris (j'essaye plutôt) un prog en C qui doit pouvoir ouvrir un fichier, chercher un "pattern" et el remplacer par autre chose.
Si le fichier n'est pas ouvert tout se passe bien (fopen, fseek, fread, ... fclose).
Par contre j'aurai besoin de pouvoir le faire même si le fichier est déjà ouvert... et là c'est le drame...
Est-ce que quelqu'un saurait comment s'y prendre (suis pas forcément borné sur le langage), est-ce que c'est totalement impossible??
Merci
#2 Le 27/11/2008, à 11:55
- slasher_fun
Re : Modification d'un fichier déjà ouvert
Bonjour,
Il ne peut y avoir qu'un seul processus qui a le contrôle en écriture sur un fichier, donc si autre chose que ton programme a déjà ce contrôle, rien à faire
Hors ligne
#3 Le 27/11/2008, à 12:03
- YoOm
Re : Modification d'un fichier déjà ouvert
arf :'(
eh beh merci quand même!!
Et si c'était mon programme qui lançait le-dit processus (genre avec un fork ou je ne sais quoi) [là je m'embarque dans des trucs que je ne connais pas...], ça donnerait le contrôle à mon programme ou ça reviendrait au même?
#4 Le 27/11/2008, à 12:06
- slasher_fun
Re : Modification d'un fichier déjà ouvert
Premier arrivé, premier servi (en gros)
Hors ligne
#5 Le 27/11/2008, à 13:37
- nicolas.sitbon
Re : Modification d'un fichier déjà ouvert
Premier arrivé, premier servi (en gros)
This volume of IEEE Std 1003.1-2001 does not specify behavior of concurrent writes to a file from multiple processes. Applications should use some form of concurrency control.
Hors ligne