Bonjour,

Je viens de faire un programme python qui permette de concatener plusieurs fichiers TXT.

L'idée de ce programme est de construire un fichier "Merged_file" qui regroupe tous les fichiers TXT d'un dossier préalablement ciblé.

Mon souci réside dans la gestion des retours à la ligne. En effet, les blocs TXT ont tendances à se chevaucher une fois sur deux.

Ajouter outfile.write("\n") dans le code génère une fois sur deux des lignes vides.

Avez-vous une idée ?

Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
import os
# find all the txt files in the dataset folder
inputs = []
n=0
path = "/Users/Nicolas/Desktop/Python/test/"
for file in os.listdir(path):
    if file.endswith(".txt"):
        inputs.append(file)
        n=n+1
 
# concatanate all txt files in a file called merged_file.txt
with open('/Users/Nicolas/Desktop/Python/merged_file.txt', 'w') as outfile:
    for fname in inputs:
        with open(fname, encoding="utf-8", errors='ignore') as infile:
            for line in infile:
                outfile.write(line)
 
print("The program has concatenated",n,"files")