bytebrain+2008-11-04 16:28:08--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
sub header
{
my $output = @_ ;
open(OUTPUT, ">$output") or die "Cant open File: $!\n";
while (<DATA>)
{
print OUTPUT;
}
__DATA__
Mein Text
close(OUTPUT);
}
Das kann so nicht funktioneren.
Doch, bis auf den falshc platzierten __DATA__-Bereich.
QuoteDu öffnest die Datei $output zum schreiben. Dazu definierst du das Datei-Handle OUTPUT.
Über dieses Datei-Handle sprichst du die Datei letztendlich an.
Du machst jetzt jetzt quasi folgendes:
Schreibe via OUTPUT in Datei $output. Nur sagst du nicht, was geschrieben werden soll ;-)
Es wird
$_ geschrieben. Das wird in der while-Schleife automatisch zugewiesen und ist Default-Argument bei
print. Anders gesagt: ein
print ohne alles gibt einfach
$_ aus, und das klappt auch, wenn ein Filehandle angegeben ist. :-)