Moin !
ich habe mir einige Zeilen PERL gebastelt um eine Datei zu Parsen - besser gesagt es ist abgeleitet aus einem einfachen Beispiel.
Eingelesen wird unter WIN eine TAB-getrennte ASCII-Datei und nun möchte ich mir zunächst die Werte der 3.Spalte ausgeben - in Perl habe ich diese $ATTRIBUTES benannt.
Aber es werden keine Werte im Befehlszeilenfenster gelistet.
Kann mir einer von Euch sagen warum das so ist ??? und was ich ggf. ändern müßte.
Gruß Jan :-)
hier der Code:
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
54
55
56
57
58
59
60
61
#!/usr/bin/perl
use strict;
use warnings;
# Parser einbinden
my $osmolt_file = $ARGV[0];
my $result_file = $ARGV[1];
my $count_lines = 0;
my $count_ctimes = 0;
ReadData();
# Filter anlegen
sub ReadData
{
#Filterdatei oeffnen
open( FH, $osmolt_file ) or die( "$osmolt_file: $!" );
open (my $out, ">", $result_file) || die ("Can't open html output file: ".$result_file) ;
my $count = 0;
my $desc = "";
#fuer jede Zeile
while( <FH> )
{
chomp; # Newlines loeschen
s/^\s+//; # fuehrende Leerzeichen entfernen
s/\s+$//; # nachfolgende Leerzeichen entfernen
next if( /^#/ ); # Kommentare ueberspringen
next if( /^s*$/ ); # Leerzeilen ueberspringen
if ($count != 0)
{
#Zeile auftrennen
my($point,$title,$attributes,$icon,$icon_size,$iconOffset) = split( /\t/, $_, 7 );
print $point." - ".$attributes." * ";
$count_lines++;
print $attributes;
if (length $attributes > 0 )
{
$desc="<i>Es liegen Daten vor !!!!</i>";
} else {
$desc="<i>keine Leerungszeiten vorliegend!</i>";
}
print $out $point."\t".$title."\t".$desc."\t".$icon."\t".$icon_size."\t".$iconOffset."\n";
} else {
# einfache Datenweitergabe der Kopfzeile
print $out $_."\n";
}
#Anzahl der eingelesenen Zeilen
$count++;
}# end-while
close( FH );
close $out;
}
... der Funktionsaufruf:
perl tagtest.pl tagtest.txt tagtest_format.txt
... hier noch meine Daten:
Quotepoint title description icon iconSize iconOffset
54.0726594,9.9844612 parking | operator | apotheke.png 20,20 -10,-10
53.935133,10.3108308 parking_tickets | operator | apotheke.png 20,20 -10,-10
53.8111175,10.3783857 parcel_pickup;parcel_mail_in | operator | 113 apotheke.png 20,20 -10,-10
53.8110639,10.3782336 parcel_mail_in | operator | apotheke.png 20,20 -10,-10
54.0446766,10.7096604 excrement_bags | operator | apotheke.png 20,20 -10,-10
54.044374,10.707594 excrement_bags | operator | apotheke.png 20,20 -10,-10