while(!$fh->eof()) { $line=''; # Daten einlesen solange kein "\n" oder "\r" kommt # overflow couter my $oc = 0; while(index($data,"\x0A") < 0 && index($data,"\x0D") < 0 && $oc < 1000) { $fh->read($buff,1024); # anpassen wenn es zu langsam ist... $data.=$buff; $oc++; if ( $oc gt 10000 ) { print "Overflow detected at line $count:\n"; print $data."\n"; print $buff."\n"; } } # erste Zeile Heraussplitten ("\n" und "\r") gehen verloren # das läuft solange wie $data noch Newlines enthalten # das "split" ist recht langsam, mit "index" und "substr" währe es schneller ($line,$data)=split(/[\x0A\x0D]+/,$data,2); #print $line."\n\n"; #working($line); $count++; if ( ! ( $count % 10000 ) ) { print "$count lines done\n"; } }