Bonjour à toutes et tous.
Je suis face à une problématique qui va en faire sourire certains, mais qui est bloquante pour moi...
Je dispose d'un fichier texte d'UNE SEULE ligne, TRES longue (plusieurs centaines de milliers de caractères).
Cette ligne se compose sous la forme suivante :
|dupont|pierre|52|lotissement du chene|87000|limoges|durand|jacques||lieu dit toto|75000|paris|etc...
Donc : |nom|prenom|num rue|complement adresse|code postal|ville| LA STRUCTURE EST TOUJOURS IDENTIQUE, d'un bout à l'autre du fichier (cet exemple est simplifié pour une meilleure compréhension)
Je souhaite comme vous l'avez deviné, insérer un saut de ligne touts les 7 "|" (pipe) dans cet exemple (c'est en réalité tous les 28) tout en conservant mon contenu de fichier tel quel, pipes compris
J'ai tenté avec FOR /F avec token et delim et j'envoie la sortie dans une fonction qui récupère les variables et les écrit dans un fichier texte. C'est du (sale) bricolage, et en plus ça marche pas : j'arrive à sortir ma première ligne, écrire mon retour à la ligne, mais le FOR ne parcourt pas le reste du fichier. C'est là que je coince...
En gros, il faudrait que je puisse parcourir mon fichier caractère par caractère tout en sortant tout ça au fur et à mesure dans un fichier texte, compter les pipe que je rencontre et tous les "x" pipe, insérer un retour chariot et continuer comme ça jusqu'au bout.
Le but étant d'obtenir un fichier bien propre pour import dans un tableur.
J'ai tenté en batch car c'est le seul "langage" que je connaisse un tout petit peu (j'envisage de me former sur Python qui me semble être la meilleure alternative pour un débutant qui a de petits besoins ponctuels...)
Merci d'avance aux réponses qui pourront éclairer ma lanterne 🙂
Partager