Bücher online kostenlos Kostenlos Online Lesen
Perl Programmierung - Grundkurs

Perl Programmierung - Grundkurs

Titel: Perl Programmierung - Grundkurs Kostenlos Bücher Online Lesen
Autoren: Barbara Hohensee
Vom Netzwerk:
Kommandozeile beim Aufruf des Perl-Programms Dateien angegeben.
perl test.pl meine_datei.txt mydatei.txt
Dann werden diese in der angegebenen Reihenfolge gelesen.
    -         Oder Sie haben nichts angegeben. Dann wird von der Standardeingabe STDIN gelesen, der Tastatur.
     
    Mit dem folgenden kleinen Programm haben Sie ein Werkzeug zum Ausgeben von Dateien.
     
    while(my $zeile=<>)
    {
    print $zeile;
    }
     
    Genau genommen interpretiert der Operator < > einfach den Inhalt der Liste @ARGV (ein perleigenes Array für diesen Zweck).
    Sie können auch selbst Werte in die Liste ablegen:
     
    @ARGV = qw(datei1 datei2 datei3);
    while(my $zeile=<>)
    {
    print $zeile;
    }
     
     
    Das Öffnene einer Datei wird meisst in folgendes Muster eingebettet:
     
    my $name = "tmp/name.txt";
    open DATEI, $name
       or die "Fehler $name: $!\n";
     
    Erläuterung zu diesem Muster:
     
    -         Sie können einen Pfad angeben. Aber Sie müssen entweder die Unix-Schreibweise mit / benutzen oder
    -         doppelte Backslashes! Es ist nicht so, dass Windows-Pfade unter Windows nicht funktionieren. Nur hat eben der Backslash eine besondere Bedeutung in Perl. Um einen einfachen Backslash anzugeben, müssen Sie immer zwei schreiben – damit die besondere Bedeutung abgeschaltet wird.
     
    -         Es gibt die logischen Operatoren gleich in zwei Varianten (or und ||) sowie (and und &&).  Die ausgeschriebenen Operatoren haben einen sehr niedrigen Vorrang und sparen hier Klammern. Wenn Sie die ||-Operatoren einsetzen wollen, müssen Sie open mit runden Funktionsklammern verwenden.
     
    open DATEI, ($name || die "Fehler");
     
    -         Logische Operatoren werden verkürzt ausgewertet: Sobald das Ergebnis klar ist, wird die Berechnung abgebrochen. Wenn open also gelingt, wird der zweite Teil gar nicht mehr angesehen.  Im Endeffekt wirkt ds wie ein if.
     
    -         Ist ein Fehler aufgetreten, wird in der vordefinierten Variablen $! eine Beschreibung des Fehlers abgelegt. Die Beschreibung ist in Englisch.
     
    -         Mit der Funktion die kann ein Programm beendet werden, wenn das gewünscht ist. Als Parameter üergibt man die einen String, der als letzte Meldung vor dem Ableben des Programms angezeigt wird.
     

Lesen
     
    Die Arbeit mit einer Datei wird wohl meis auf das Lesen oder Schreiben herauskommen. Zum
    Lesen können Sie eine Variante von < > benutzen, bei der ein Datei-Handle in die Winkel eingeschlossen wird.
     
    my $zeile =
     
    Es wird dann eine Zeile Text aus der Datei gelesen, einschliesslich des Zeilenendes. Wenn keine Zeile zum Lesen vorhanden ist, wird der Variablen $zeile der Wert undef zugewiesen.
     
    Die Anwendung dieser Eigenschaft als Beispielprogramm:
     
    while (my $zeile = ) {
        chomp($zeile);                                                        # Zeilenende abschneiden
        print "-> $zeile\n";                                          # Mach was mit der Zeile
     
     
    Sie können die Variable auch noch weglassen. Ohne ausdrückliche Angabe einer Variablen wird  automatisch die Variable $_ benutzt. Das Ergebnis sieht dann so aus:
     
    while () {
        chomp;                                                        # Zeilenende abschneiden
        print "-> $_\n";                                          # Mach was mit der Zeile
     
     
    Sie können auch ein Feld/ Array als Varable einsetzen:
     
    my @inhalt = ;
     
    Dann wird die gesamt Datei Zeile für Zeile gelesen. In der Liste @inhalt stehen also die Zeile der Datei, wieder einschliesslich der Zeilenenden.
     
    Was eine Zeile ist – oder besser gesagt, was als Zeilenende akzeptiert wird – können Sie mit der Variablen $/ einstellen.
     
    Sie können die Varible $/ auch auf den speziellen Wert undef setzen. Dann wird die gesamte Datei als eine Zeile betrachtet.
     

Schreiben
     
    Schreiben bedeutet Ausgeben in das Datei-Handle, und ausgegeben wird mit print. Es kann ein beliebiges Datei-Handle benutzt werden.
     
    print DATEI "Hallo";
     
    Der Text "Hallo" wird der Datei, die vorher mit dem Datei-Handle DATEI zum Schreiben geöffnet wurde.
     
    Die Funktion print liefert einen Wahrheitswert, mit dem man kontrollieren kann, ob das Schreiben gelang:
     
    print DATEI "Inhalt" or die "Fehler:

Weitere Kostenlose Bücher