Bonjour,
Je souhaite ajouter chaque ligne d'un fichier à la fin de chaque ligne d'un autre fichier. Comment dois-je m'y prendre ?
J'ai essayé pas mal de solutions mais ça ne donne rien. Je vois plus comment faire.
Merci !
Bonjour,
Je souhaite ajouter chaque ligne d'un fichier à la fin de chaque ligne d'un autre fichier. Comment dois-je m'y prendre ?
J'ai essayé pas mal de solutions mais ça ne donne rien. Je vois plus comment faire.
Merci !
Bonjour,
je ne suis pas sûr de bien comprendre le besoin.
Est-ce que tu veux mettre la ligne 1 du premier fichier à la fin de la ligne 1 du second fichier, puis la ligne 2 du premier fichier à la fin de la ligne 2 du second fichier, et ainsi de suite?
- La programmation fonctionnelle en Perl : 1. Les opérateurs de liste; 2. Les fonctions d'ordre supérieur; 3. Étendre le langage.
- Comment utiliser des décorateurs en Perl: Un tutoriel pour changer le comportement d'une fonction sans en modifier le code source
- De Perl 5 à Perl 6 : 1. Les bases; 2. Les nouveautés; 3. Approfondissements; 4. Annexe 1: Ce qui change entre Perl 5 et Perl 6; Annexe 2: Les nouveautés de Perl 6.
- Les regex et grammaires de Perl 6
- Objets, classes et rôles en Perl 6 - Tutoriel de programmation orientée objet
- Tour d'horizon du nouveau langage Perl 6
Bonjour,
Oui ! C'est exactement ce dont j'ai besoin.
Merci.
Il n'est pas vraiment possible d'écrire dans un fichier existant en préservant son contenu (sauf à la fin). Le plus simple est donc de lire les deux fichiers en entrée et d'écrire dans un troisième fichier. Je vais supposer, pour simplifier, que l'on sait de façon certaine les deux fichiers en entrée ont le même nombre de lignes.
Cela peut donner le code suivant (non testé, mais c'est très simple, je pense que ça devrait marcher sans problème):
N'hésite pas à demander s'il y a quelque chose que tu ne comprends pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 use strict; use warnings; my ($fichier1, $fichier2, $sortie) = qw / fichier1.txt fichier2.txt sortie.txt/; open my $FIC1, "<", $fichier1 or die "Ouverture impossible de $fichier1 $!"; open my $FIC2, "<", $fichier2 or die "Ouverture impossible de $fichier2 $!"; open my $OUT, ">", $sortie or die "Ouverture impossible de $sortie $!"; while (<$FIC1>) { chomp (my $ligne = <$FIC2>); print $OUT $ligne, " ", $_; # imprime les deux lignes mises bout à bout, séparées par un espace } close $_ for ($FIC1, $FIC2, $OUT);
- La programmation fonctionnelle en Perl : 1. Les opérateurs de liste; 2. Les fonctions d'ordre supérieur; 3. Étendre le langage.
- Comment utiliser des décorateurs en Perl: Un tutoriel pour changer le comportement d'une fonction sans en modifier le code source
- De Perl 5 à Perl 6 : 1. Les bases; 2. Les nouveautés; 3. Approfondissements; 4. Annexe 1: Ce qui change entre Perl 5 et Perl 6; Annexe 2: Les nouveautés de Perl 6.
- Les regex et grammaires de Perl 6
- Objets, classes et rôles en Perl 6 - Tutoriel de programmation orientée objet
- Tour d'horizon du nouveau langage Perl 6
Ca marche ! Merci ! Je tentais, en vain, d'écrire dans le premier fichier.
Merci !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager