Thread Datenformatierung (3 answers)
Opened by tobias at 2011-06-22 16:00

Gast tobias
 2011-06-22 16:00
#149875 #149875
Hallo,

ich hätte eine Frage zu einer Perl-Problemstellung und es wäre super, wenn mir jemand helfen könnte.

Es soll eine Textdatei names "temperatur.inp" eingelesen werden, welche folgenden Inhalt hat:

Code: (dl )
1
2
3
4
5
     1  570.3
75126 123.1
75127 122.9
177177 403.3
177178 470.2


Anschließend soll mittels perl eine Ausgabedatei erzeugt werden, welche zwischen den ersten und den zweiten Zahlenwert ein Komma setzt. Mein Script hierfür sieht momentan folgendermaßen aus:

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
use Math::Trig;

$input1='temperatur.inp';
$output1='temperatur.out';

open inp1,"<$input1";
open out1,"> $output1";

# Zerlege in einzelne Zeilen
@Zeilen=<inp1>;

# Anzahl der Zeilen
$end=@Zeilen;

for ($i=0;$i<$end;$i=$i+1)
       {
       @vals = split(/\s+/,$Zeilen[$i]);
        print  out1 "$vals[1],$vals[2]\n";
       }
       
close inp1;
close out1;


Das Problem, ist nun, dass das Script zwar die Zeilen am Anfang erkennt, jedoch die ohne Leerzeichen nicht mehr. Meine Ausgabe sieht deshalb folgendermaßen aus ("temperatur.out"):

Code: (dl )
1
2
3
4
5
1,570.3
75126,123.1
75127,122.9
403.3,
470.2,



Es wäre super, wenn mir jemand bei diesem Problem helfen könnte!
Mit freundlichen Grüßen,

Tobias
Last edited: 2011-06-22 16:30:20 +0200 (CEST)

View full thread Datenformatierung