Thread 2 array Fragen. (47 answers)
Opened by galaxy at 2006-04-13 12:27

Dubu
 2006-04-22 23:32
#64885 #64885
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Nachdem du jetzt mal den ganzen Code gepostet hast, wird eines klar: Du brauchst den Hash gar nicht.
Momentan legst du in jedem Schleifendurchlauf einen neuen Hash an, der nur ein Element bekommt und dann im Array gespeichert wird. Da brauchst du gar keinen Hash, da reicht ein anonymes Array. Und du kannst dir bei der Ausgabe diese komische verschachtelte Schleife sparen.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
foreach (@Zeilen) {      # woher kommen diese @Zeilen?
...
    open(DATEI, '< ', 'C:/Beispieldaten/Konfigurationsdaten/20060310.REPOSITORY')
       or die "Konnte Datei nicht öffnen: $!";
   while (<DATEI>) {
       if(/^$zahl1;([^;]+)/){
           push(@array, [ $1, $inhalt ]); # Referenz auf anonymes Array mit $1 und $inhalt landet in @array
           # woher kommt eigentlich $inhalt?
       }
   }
...
}

foreach my $element (@array) {
   print "$element->[0] => $element->[1]\n";
}


Ich hoffe auch, dass dir bewusst ist, dass du in deinem Code zwei Variablen mit Namen @Zeilen im gleichen Namespace hattest, die offensichtlich vollkommen unterschiedliche Bedeutung haben. Das ist mehr als unschön.

View full thread 2 array Fragen.