[python] écrire en début de fichier [Résolu/Fermé]

Signaler
Messages postés
103
Date d'inscription
mercredi 20 juin 2012
Statut
Membre
Dernière intervention
5 décembre 2015
-
 caracana -
Bonjour,

Comme écrit dans le titre, je souhaiterais écrire, grâce à un script python, au début d'un fichier. Malgrès toutes mes recherches, je n'ai rien trouvé (sauf pour les autres languages).
A pire, si vous avez des idées en batch, je suis preneur, car je fonctionne sous windows.

Merci d'avance!


3 réponses

Bonjour,

Désolé de relancer un topic créé il y a 6 mois, mais je cherchais moi aussi comment faire, je suis tombé sur ce topic et sur la réponse de Pacorabanix.

Néanmoins, n'aimant pas trop cette solution (on doit créer un fichier temporaire), j'ai fait la mienne, et je la trouve meilleure :

B = "le texte a rajouter au début"
fichier = open(A, "r")
total = B + fichier.read()
fichier.close()

fichier = open(A, "w")
fichier.write(total)
fichier.close()
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 89020 internautes nous ont dit merci ce mois-ci

Messages postés
1492
Date d'inscription
vendredi 26 octobre 2012
Statut
Membre
Dernière intervention
28 janvier 2013
83
J'espère pouvoir t'aider avec ceci:
# Ouverture d'un fichier en *lecture*:
fichier = open("/etc/passwd", "r")
# Ouverture d'un fichier en *écriture*:
fichier = open("/etc/passwd", "w")
# Ouverture d'un fichier en *ajout*:
fichier = open("/etc/passwd", "a")

Tu noteras qu'une petite recherche m'a donné cela en 2 secondes !
Messages postés
3241
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
577
Tu as ton fichier d'origine, appelons le "A"

* créer un nouveau fichier (B), mettre ce que tu voulais rajouter au début de A
* copier le reste de A à la suite de ce que tu as mis dans B.
* supprimer A
* renommer B en A


peut-être qu'il y a des bibliothèques qui font ces petites routines, mais je ne les connais pas.
En tout cas ça me semble la manière "normale" de faire ces ajouts en début de fichier, c'est un peu de boulot mais la choses sont faites ainsi. Peu importe le langage.