Bonsoir,
J'aimerais écrire dans un fichier. Je pense utiliser "print FILEHANDLE LIST".
Contrainte supplémentaire, c'est mon script qui va déterminer dans quel fichier il faut écrire :
si une fonction (inutile de savoir laquelle) retourne "35", il faut écrire dans le fichier "35.html". Sinon, il faut écrire dans "36.html".
J'ai pensé utiliser un tableau associatif pour récupérer le filehandle du bon fichier : ("35" => $fh_file_35, "36" => $fh_file_36);
Voici un code minimal, la dernière ligne ne fonctionne pas alors que l'avant dernière ligne marche. Sauriez-vous pourquoi ?
Merci.
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
20
21
22
23 use strict; use warnings; my $name_folder_save = "save-prog-journee"; my $file_35 = "$name_folder_save/35.html"; my $file_36 = "$name_folder_save/36.html"; open(my $fh_file_36, '>>', $file_36) or die "cannot open >> $file_36: $!"; open(my $fh_file_35, '>>', $file_35) or die "cannot open >> $file_35: $!"; my %assoc_group_to_fh = ("35" => $fh_file_35, "36" => $fh_file_36); # pour tester : print $fh_file_35; # GLOB(0x544048) print "\n"; print $assoc_group_to_fh{"35"}; # GLOB(0x544048) print $fh_file_35 "chaîne à ajouter" ; # ceci fonctionne #print $assoc_group_to_fh{"35"} "chaîne à ajouter" ;
Partager