Bonjour,
Je souhaiterai lire un fichier *.txt avec comme séparateur '|' pour le stocker dans un fichier *.csv avec bien sûr une cellule par chaque éléments séparés par '|'.
Merci par avance pour votre aide.
Version imprimable
Bonjour,
Je souhaiterai lire un fichier *.txt avec comme séparateur '|' pour le stocker dans un fichier *.csv avec bien sûr une cellule par chaque éléments séparés par '|'.
Merci par avance pour votre aide.
Oui j'ai déjà utilisé une fonction similaire, mais le problème est que chaque ligne est copiée dans une seule cellule. Je voudrais que (par exemple):
Contenu de mon fichier txt:
Et que chaque élément séparé de '|' soit chacun dans une cellule respective.Code:|0256985214|toto est parti à l'ecole|pas de cantine ce midi|2.30|
Merci.
Il n'y a pas de notion de "cellule" en csv. Un csv ce n'est qu'un txt, ni plus, ni moins. Enfi si, il y a du "moins". Le "moins" c'est qu'un txt c'est du vrac sans contrainte tandis que le csv doit avoir toutes ses lignes structurées de la même façon. Mais mis à part ce détail, un csv ça reste du bête fichier texte.
J'ai trouvé un bout de solution ^^
Code:
1
2
3 with open(TXT_Filename) as infile, open(CSV_Filename,'w') as outfile: for line in infile: outfile.write(line.replace('|',';'))
En fait, le plus simple serait peut-être d'ouvrir le fichier .txt à l'aide de libbroffice par exemple, avec le séparateur voulu, et de l'enregistrer en .csv avec le séparateur voulu ?
Super. Tu recopies ton txt dans ton csv en remplaçant les "|" par des ";". Si ça te convient... En tout cas il n'y a aucune notion de "cellule".
D'autant plus que le csv ce n'est pas un format différent d'un txt, c'est le même !!! Il n'y a donc même pas à parler de "un format à un autre".