salut a tous j'ai encore une question concenant les fichiers de sortie que j'aimerai a l'aide de mon perl-Script produire
ligne 2 le nom que doit porter mon fichier
ligne 3 le nom est ecrit sur le fichier et la valeur du parametre
ligne 6 nom des donnees et leurs valeurs sont ecrit sur le fichier.
quelqu'un ici peut il m'aider?
1 for my $k (keys %{$data}) {
2 print "----$k----\n"; # le nom que porte mon fichier
3 print "$k: $param->{$k}\n"; # ecrit le nom dans le fichier et la valeur du parametre
4 for my $i (0.. $#{$data->{$k}}) {
5 if ($param->{$k} ne $data->{$k}->[$i]->[1]) {
6 print "$data->{$k}->[$i]->[0]: $data->{$k}->[$i]->[1]\n"; # noms des data et leurs valeurs
7 }
8 }
# Les jours défilent…
Posté par Sacha Trémoureux (site web personnel) . Évalué à 6.
…et ce malheureux livre de Perl prend toujours la poussière. :(
[^] # Re: Les jours défilent…
Posté par Henri . Évalué à -7.
evidemment!!!
# au hasard en reprenant les posts precedents, on trouve ...
Posté par NeoX . Évalué à 3.
dans les posts precedents on a vu comment ecrire dans un fichier
on a vu comment recuperer le nom d'un fichier dans une variable ($file) pour l'utiliser ensuite.
là dans ton cas $file est remplacé par $k mais la logique reste la meme
je te laisse comment integré cela dans ta boucle ;)
[^] # Re: au hasard en reprenant les posts precedents, on trouve ...
Posté par Henri . Évalué à -6.
par alleur je sais bien comment creer les fichiers.
dans ce cas il ya plusieurs fichiers qui doivent etre cree. et chaque fichier porte un nom different et des donnes differentes.
je pourrai juste dire que ca l'air facile mais c'est ne marche pas.
[^] # Re: au hasard en reprenant les posts precedents, on trouve ...
Posté par totof2000 . Évalué à 2. Dernière modification le 27 octobre 2015 à 08:08.
Soit on a mal compris quelque chose, soit la solution est presque indiquée dans le post précédent.
Tu as juste à intégrer ce bout de code dans ta boucle (en n'oubliant pas de fermer le fichier ou tu risques de te retrouver avec des fichiers vides).
Il te suffit juste d'ajouter un tableau, ou un hash contenant les handlers de fichiers que tu as ouvert à la place de $FH.
[^] # Re: au hasard en reprenant les posts precedents, on trouve ...
Posté par Henri . Évalué à -5.
Merci bien de votre aide:
la solution
[^] # Re: au hasard en reprenant les posts precedents, on trouve ...
Posté par totof2000 . Évalué à 3. Dernière modification le 27 octobre 2015 à 13:58.
Hum …
Comme je l'ai dit plus haut, tu risques d'avoir des problèmes si tu ne fermes pas tes fichier proprement.
# je vais faire mon enquiquineur
Posté par fearan . Évalué à 3.
mais parcourir les clés d'une map pour ensuite l'utiliser pour accéder à la valeur me semble pas du plus efficient ;)
on a une syntaxe bénie pour ça :
Je te laisse évidemment adapter à ton cas :)
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
[^] # Re: je vais faire mon enquiquineur
Posté par anaseto . Évalué à 2.
D'un autre côté, faut faire attention avec
each
parfois : faut s'assurer que le même hash n'est pas reparcouru à l'intérieur de la boucle, ou dans un appel de fonction à l'intérieur de la boucle, sous peine d'avoir des surprises. Faut aussi éviter d'ajouter ou supprimer de nouvelles clés à l'intérieur de la boucle (sauf la clé courante comme exception). Du coup, parfois utiliserkeys
est plus reposant.Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.