if( open (FH , "<$options{feed}") ) {
while(<FH>) { ....} else {
warn "Fehler beim öffnen von $options{feed}: $!";
}
Ähm dass da keine Datei ist, ist ja kein Fehler sondern der Normalzustand am Anfang.
D.h. du möchtest egal welchen Fehler es gibt, dir den nicht anzeigen lassen, weil die Datei am Anfang nicht existiert?
Um auf die Existenz einer Datei zu testen kannst du -s oder -e benutzen.
wie Skeeve schon sagte, ist es durchaus üblich in Perl, dafür fertige Module von CPAN zu benutzen, gerade zu XML sollten Reihenweise Module verfügbar sein. Zumal so ein Geschichte (das Parsen von XML) schnell ausartet.
Naja, da ich zu jedem Zeitpunkt zu 100% sicher sein kann wie die Datei aussieht weil ich sie ja selbst 10 Zeilen später erstelle denke ich dass man da auch mal pragmatisch sein und auf relativ einfache regexe, die zur Grunfunktionalität der Sprache gehören setzen kann, anstatt noch künstlich eine zusätzliche Bariere/Abhängigkeit eines Modules herbeizuführen.
Module sind das A und O bei Perl. Wenn du darauf verzichten möchtest, dass es Leute gibt die jahrelanger Erfahrung mit Perl oder einer bestimmten Materie haben und diese dir zu Verfügung stellen, dann ist das natürlich eine Möglichkeit, aber gerade als Anfänger wäre es ratsam, zumal der Umgang mit Modulen eine wichtige Fähigkeit ist, die man sich schnell aneignen sollte.
Aber wie gesagt, Module sind immer erste Wahl.
Was konkret in diesem Fall würde denn eine zusätzliche Abhängigkeit eines Moduls rechtfertigen?
* Zuverlässigkeit
* Erweiterbarkeit
* weniger und lesbarer Code
* leichter zu debuggen, da die Module i.d.R. Fehlerprüfungen eingebaut haben.
Struppi.
Javascript ist toll (Perl auch!)