Thread Datei Handle überprüfen (3 answers)
Opened by Gast at 2008-04-09 21:00

betterworld
 2008-04-10 04:45
#108196 #108196
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
Wenn Du die Datei sowieso oeffnen moechtest, kannst Du auch open zum Ueberpruefen der Existenz nehmen:

Code: (dl )
1
2
3
4
5
6
7
8
9
while (1) {
my $fh;
my $dateiname = eingabe();
if (open $fh, '<', $dateiname) {
last;
} else {
warn "Kann $dateiname nicht oeffnen: $!\n";
}
}


Hierbei wird solange Eingabe gefordert, bis die Datei geoeffnet werden kann. Fehler beim Oeffnen koennen natuerlich auch an anderen Sachen als Nichtexistenz liegen. Das koennte man mit dem Modul Errno ueberpruefen, wenn man will.
Ich versuche eigentlich immer solche Sachen wie "erst -e, dann open" zu vermeiden, weil sich zwischen den beiden Calls noch etwas aendern koennte (Stichwort Race Condition).

Ich habe oben auch gleich ein Wiki:lexikalisches Dateihandle benutzt, das wird allgemein als schoener anerkannt.

View full thread Datei Handle überprüfen