Thread Datei einlesen (38 answers)
Opened by Fredl at 2012-03-09 15:50

hlubenow
 2012-03-09 20:39
#156709 #156709
User since
2009-02-22
876 Artikel
BenutzerIn
[default_avatar]
Guest Fredl
3) Ich habe nun versucht eine Datei zu öffnen/lesen/verändern...! Mit dem Befehl:

open(FILE,"demo.dat"); Wo muss die Datei demo.dat abgespeichert sein damit Perl diese Datei öffnen kann? Was ist wenn ich sie z.B.: in D:\Versuch gespeichert habe. Ich habe alles versucht leider funkt es nicht!!

Im Prinzip haben pq und FIFO es ja schon erklärt. Hier nochmal konkreter zu Deinem Versuch. Du schriebst:
Code (perl): (dl )
open(FILE,"demo.dat");

Da fehlt ein "<" oder ">", um anzugeben, ob die Datei für's Lesen oder Schreiben geöffnet werden soll. Stattdessen also zum Lesen:
Code (perl): (dl )
open(FILE,"<demo.dat");

Wenn sie in "D:\Versuch" liegt demnach:
Code (perl): (dl )
open(FILE,"<D:\\Versuch\\demo.dat");

So, dann mußt Du's aber auch noch lesen und nicht nur öffnen. Also:
Code (perl): (dl )
1
2
3
4
5
6
7
open(FILE,"<D:\\Versuch\\demo.dat");
my @a = <FILE>;
close(FILE);
my $i;
foreach $i (@a) {
    print "$i\n";
}

In der open-Zeile fügt man gern noch ein "or die;" an, wie FIFO es oben gemacht hat. Das dient dazu, das Skript abzubrechen, falls aus irgendwelchen Gründen das Öffnen der Datei nicht geklappt haben sollte.

Alles klar?

Edit: Fehler bei Namen korrigiert.

View full thread Datei einlesen