Thread bestimmte Positionen in text Datei auslesen (11 answers)
Opened by perle at 2013-07-12 12:39

payx
 2013-07-15 12:01
#168867 #168867
User since
2006-05-04
564 Artikel
BenutzerIn

user image
Hallo perle,

Hashes sind in Perl per default ungeordnet. Du kannst also nie davon ausgehen, dass Dir ein Hash die key-value-Paare in einer bestimmten Reihenfolge zurückliefert (vor allem nicht in der Reihenfolge, in der Du sie erfasst hast).

Für die Ausgabe in Excel wirst Du die Reihenfolge der Spalten festlegen, indem Du die Spalten nach Spaltennamen nacheinander abfragst.

So bekommst Du zum Beispiel den Inhalt der Spalte RFORM des ersten Datensatzes: $excel_rows[0]->{'RFORM'}.

Konkret kannst Du die Daten als tsv-Datei ausgeben. Eine solche Datei kannst Du dann direkt mit Excel öffnen; möglicherweise genügt Dir das.

Da wo jetzt print Dumper \@excel_rows; steht, könntest Du stattdessen einfügen:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
open my $tsvFH, ">", "out.tsv";

my @header = qw (TYPE RFORM REC-SIZE CREATION LAST-RD STATE EXEC_COPIES DATA-BEGIN DAT-END RELEASE);

print $tsvFH $_ . "\t" for @header;

print $tsvFH "\n";

for my $row (@excel_rows) {

    print $tsvFH $row->{$_} ? $row->{$_} . "\t" : "\t" for @header;
    print $tsvFH "\n";
        
}


Und dann die erzeugte Datei out.tsv mit Excel öffnen.

HTH
Grüße
payx

View full thread bestimmte Positionen in text Datei auslesen