Frage zu readdir+push

03/10/2007 - 09:32 von guba | Report spam
Hallo,

kann mir jemand sagen, warum code1 funktioniert, aber der
zusammengefasste code2 nicht?
$TempShapes_folder ist etwas wie 'C:.../TempShapes/' .

Danke für Hinweise

Guenter


code1:

opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes = grep(/\.png$/, readdir(DIR));
closedir(DIR);
opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes2 = grep(/\.PNG$/, readdir(DIR));
closedir(DIR);
push(@File_list_TempShapes, @File_list_TempShapes2);
opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes3 = grep(/\.jpg$/, readdir(DIR));
closedir(DIR);
push(@File_list_TempShapes, @File_list_TempShapes3);
opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes4 = grep(/\.JPG$/, readdir(DIR));
closedir(DIR);
push(@File_list_TempShapes, @File_list_TempShapes4);




code2:

opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes = grep(/\.png$/, readdir(DIR));
@File_list_TempShapes2 = grep(/\.PNG$/, readdir(DIR));
@File_list_TempShapes3 = grep(/\.jpg$/, readdir(DIR));
@File_list_TempShapes4 = grep(/\.JPG$/, readdir(DIR));
closedir(DIR);
push(@File_list_TempShapes, @File_list_TempShapes2,
@File_list_TempShapes3, @File_list_TempShapes4);
 

Lesen sie die antworten

#1 Bjoern Hoehrmann
03/10/2007 - 09:37 | Warnen spam
* wrote in de.comp.lang.perl.misc:
kann mir jemand sagen, warum code1 funktioniert, aber der
zusammengefasste code2 nicht?

opendir(DIR, "$TempShapes_folder") || die "folder not found: $!";
@File_list_TempShapes = grep(/\.png$/, readdir(DIR));
@File_list_TempShapes2 = grep(/\.PNG$/, readdir(DIR));



Weil readdir nur die verbleibenden Eintràge zurückliefert, und nichts
falls es keine Eintràge mehr gibt. In der ersten Version umgehst du das,
weil du opendir/closedir wiederholt aufrufst, hier jedoch nicht. Siehe

% perldoc -f readdir

für die Dokumentation von readdir.
Björn Höhrmann · mailto: · http://bjoern.hoehrmann.de
Weinh. Str. 22 · Telefon: +49(0)621/4309674 · http://www.bjoernsworld.de
68309 Mannheim · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/

Ähnliche fragen