Perl - große Datei einlesen in normales Skalar oder Array

Cyrics

Neuer Berner Rosenapfel
Registriert
01.04.05
Beiträge
1.973
Hallo,

ich stehe vor dem Problem eine etwa 30.000 Zeilen lange Datei einlesen und verarbeiten zu wollen und das mit Perl. Es scheint aber etwas unmöglich zu sein diese zu verarbeiten, weil immer nur etwa die ersten 10 Zeilen übergeben werden. Egal ob ich es in ein Array mit Aufsplittung oder in ein Skalar versuche zu speichern. Der Inhalt ist immer der gleiche Kurze. Der Eingabestrom scheint jedoch mehr herzugeben. Bei direkter Ausgabe des Eingabestroms der Datei erkennt man, dass der Stream in Pakete zerlegt wird, die dann hinter einander ausgegeben werden. Es scheint also so zu sein, dass ich immer nur den ersten Teil dieses Streams zu fassen kriege.

Wisst ihr vielleicht Rat? Wie kann ich den Stream bändigen bzw. reglementieren?

Ziel ist es bestimmte Inhalt aus der Datei heraus zu filtern und weiter zu verwenden.

PS:
Dies ist mein simpler Ansatz dafür:
Code:
open (IN, "$zwischenspeicher");	
@feld = split (/\ /,<IN>);
close(IN);
 

drlecter

Wöbers Rambur
Registriert
04.11.06
Beiträge
6.442
Was steht denn in der Datei? Ist das eine Textdatei und sind die Infos immer Zeilenweise abgelegt?
Wenn ja kannst du doch eifach:
Code:
@inhalt=<FILE>;
while inhalt....
benutzen. Das sollte auch von der Zeilenanzahl her gehen. Alternativ lässt du das Dateihandle offen und verarbeitest alles Zeilenweise.