OVH Cloud OVH Cloud

PB fichier txt

2 réponses
Avatar
Renaud LENSKI
mon code


$fichier=$a1."photo.txt";
$ouvrir=fopen("../texte/$fichier","r+");
$texte=$dossier.",".$titre.",".$date.",".$photo."\n";
fputs($ouvrir,$texte);
fclose ($ouvrir);


le probleme est que si ce que j'insere contitne 10 caracteres, il insere le
nouveau contenu au début du fichier mais efface 10 caractères du contenu
deja existant?

comment faire pour inscrire 1 ligne en debut de fichier sans en effacer le
contenu ??

Merci d'avance

Renaud

2 réponses

Avatar
Guillaume Bouchard
Renaud LENSKI wrote:

comment faire pour inscrire 1 ligne en debut de fichier sans en effacer le
contenu ??


1) ouvrir le fichier et recuperer son contenu
2) concatener ta chaine devant le contenu
3) reecrire tout le fichier.

Il y a une fonction sous Linux qui te fera proprement cela, mais cela
implique l'acces à la fonction exec(). Et je ne me rappel plus du nom de
la dite fonction.

--
Guillaume.

Avatar
KEvin
Guillaume Bouchard a proclame :
1) ouvrir le fichier et recuperer son contenu
2) concatener ta chaine devant le contenu
3) reecrire tout le fichier.

Il y a une fonction sous Linux qui te fera proprement cela, mais cela
implique l'acces à la fonction exec(). Et je ne me rappel plus du nom de
la dite fonction.


cat ??
avec:
echo "tanouvellechaine" | cat - tonfichier > tonfichier

mais c'est pareil que la procedure decrite : il reecrit le fichier

(desole j'ai fait un post identique mais j'avais pas vu celui la ...)

--
KEvin