Thread xlxs oder csv Datei einlesen und ausgeben (7 answers)
Opened by Peven at 2017-03-07 16:02

rosti
 2017-03-08 10:46
#186227 #186227
User since
2011-03-19
3492 Artikel
BenutzerIn
[Homepage]
user image
Ein Slice (Array mit Hashreferenzen) wäre eine zweckmäßige Datenstruktur für die Daten einer CSV.Datei:

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
use strict;
use warnings;
use Data::Dumper;

# definiere Feldnamen
my @felder = qw(name vname alter hobbies);

# hier kommts Ergebnis drauf
my @slice  = ();

# datei lesen
while(my $rec = <DATA>){
    chomp $rec;
    my %hunt = ();
    @hunt{@felder} = split ";", $rec; #  hash-slice!

    # hier könnte die Suchbedingung
    # Anwendung finden
    push @slice, \%hunt;
}

print Dumper \@slice;


__DATA__
Müller;Jens;42;Fußball, Tennis, Vögel beobachten
Knusper;Ronny;34;lesen, schlafen, langweilen



Zweckmäßig deswegen weil die Felder übern Index und namentlich direkt addressierbar sind. HTML::Template freut sich übrigens auch über diesen Slice:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$VAR1 = [
{
'alter' => '42',
'name' => 'Müller',
'hobbies' => 'Fußball, Tennis, Vögel beobachten',
'vname' => 'Jens'
},
{
'alter' => '34',
'name' => 'Knusper',
'hobbies' => 'lesen, schlafen, langweilen',
'vname' => 'Ronny'
}
];


Womit z.B. das Ergebnis dynamisch als HTML erzeugt werden kann.
Last edited: 2017-03-11 17:48:12 +0100 (CET)

View full thread xlxs oder csv Datei einlesen und ausgeben