Thread file auslesen und bestimmte daten speichern
(9 answers)
Opened by Gast at 2007-07-27 20:37
hi
also ich würde gern mit perl eine datei öffnen in der eine menge zahlen in spalten durch lehrzeichen getrennt stehn... ich speiche diese dann in arrays und suche nach bestimmten kriterien, wenn ich fündig werde möchte ich die komplette zeile in eine neue datei speichern ich bin schon so weit weiss aber jetzt nimmer wie ich weiter machen soll: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 #!/usr/bin/perl while(<>) { @stuff=split(' '); if(/UQMD/){ } elsif(/projectile:/){ $protar=$_ } elsif(/equation_of_state:/){ $ecm=$stuff[5]; $elab=$stuff[3]; $plab=$stuff[7]; } elsif(/event#/){ $noe++ # numbers of events: noe } else{ if($#stuff==14||$#stuff==13){ @x=@stuff[0..3]; @p=@stuff[4..7]; @id=@stuff[8..11]; $mass=$id[0]; $ityp=$id[1]; $iz2=$id[2]; $charge=$id[3]; # ab hier steht folgende info zur verfuegung: # stuff[0] = r_0 = $x[0] # stuff[1] = r_x = $x[1] # stuff[2] = r_y . # stuff[3] = r_z . # stuff[4] = p_0 = $p[0] # stuff[5] = p_x = $p[1] # stuff[6] = p_y . # stuff[7] = p_z . # stuff[8] = mass = $id[0] # stuff[9] = ityp = $id[1] # stuff[10]= iz2 = $id[2] # stuff[11]= charge = $id[3] # hier bestimm ich was ich suche if ($ityp==1){ open(file, ">sort.txt"); print file ("! ",$protar); print file ("!number/event:",$number/$noe," ,ev:",$noe,"\n"); foreach $i(0 .. $#n){ print file ($x[0],"",$x[1],"",$x[2],"",$x[3],"",$p[0],"",$p[1],"",$p[2],"",$p[3],"",$id[0],"",$id[1],"", $id[2],"", $id[3],"\n") } close(file); das problem ist dass es irgendwie nich funktioniert und ich weiss nich woran es liegt\n\n <!--EDIT|renee|1185560084--> |