Thread Dynamisch in Filehandles printen (5 answers)
Opened by Aleks at 2007-03-16 15:11

Aleks
 2007-03-16 15:11
#75086 #75086
User since
2006-06-12
19 Artikel
BenutzerIn
[default_avatar]
Hallo Forum,
ich habe eine reihe Filehandles, die heißen alle 'S1, S2, S3,...'.
Nun würde ich gerne soetwas machen:

Code: (dl )
1
2
3
for (qw/1 2 3/){
print S$_ "meinzeug";
}


Leider mag der das nicht "Strinf found where operator expected". Was wohl daran liegt das print einen Listenkontext erwartet?. Dann habe ich folgendes probiert:

Code: (dl )
1
2
3
4
for (qw/1 2 3/){
my $fh = "S".$_;
print $fh "meinzeug";
}

Ergebnis:
Can't use string ("S1") as a symbol ref while "strict refs"..

Nun habe ich zwar eine Lösung die funktioniert aber hässlich ist.
Gibt es keine Möglichkeit soetwas in "einer print Anweisung" hinzubekommen? Vom Prinzip her sowas wie der erste Ansatz, nur das es halt funktioniert ;-)

Falls es interessiert, so habe ich es dann gemacht:
Code: (dl )
1
2
3
4
5
for (qw/1 2 3/){
my $fh = "S".$_;
select (fh);
print "meinzeug";
}


Gruß,
Aleks

View full thread Dynamisch in Filehandles printen