1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

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

Dieses Thema im Forum "OS X-Developer" wurde erstellt von Cyrics, 05.08.07.

  1. Cyrics

    Cyrics Neuer Berner Rosenapfel

    Dabei seit:
    01.04.05
    Beiträge:
    1.975
    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);
     
  2. drlecter

    drlecter Wöbers Rambur

    Dabei seit:
    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.
     

Diese Seite empfehlen