Hallo!
Ich habe ein Problem, dass einem kinderleicht und primitiv scheinen kann. Aber für mich ist es echt schwierig, ich kapiere es nicht(da ich ziemlich wenige Erfahrungen habe mit dem Programmieren).Ich wäre euch sehr dankbar, wenn Ihr mir helfen könnt.
Also, die Frage: ich habe ein Verzeichnis mit Dateien drin und will in allen diesen Dateien z.B die Frequenzliste ermitteln, d.h alle Dateien sequentiell berabeiten
opendir (DIR,"italienisch");
@Dateien=readdir(DIR);#ich speichere Dateien in einem Array
closedir(DIR);
foreach $file (@Dateien)
{
open (IN,"<".$file);
while(<IN>){
for (split /[.,?:!;!()\[\]&\%\$\-"\s]+/) {
chomp;
$hash{$_}++ if (/^\p{IsLower}/); #Unicodeklasse für Kleinbuchstaben
print $_." ".$hash_lc{$_}."\n";
}
}
Und als Ergebnis erwarte, dass ich Frequenzliste aus allen diesen Dateien bekomme, aber bei mir kommt der Fehlermeldung: readline() on closed filehandle IN..
Schöne Grüsse,
LiNa
Ich habe ein Problem, dass einem kinderleicht und primitiv scheinen kann. Aber für mich ist es echt schwierig, ich kapiere es nicht(da ich ziemlich wenige Erfahrungen habe mit dem Programmieren).Ich wäre euch sehr dankbar, wenn Ihr mir helfen könnt.
Also, die Frage: ich habe ein Verzeichnis mit Dateien drin und will in allen diesen Dateien z.B die Frequenzliste ermitteln, d.h alle Dateien sequentiell berabeiten
opendir (DIR,"italienisch");
@Dateien=readdir(DIR);#ich speichere Dateien in einem Array
closedir(DIR);
foreach $file (@Dateien)
{
open (IN,"<".$file);
while(<IN>){
for (split /[.,?:!;!()\[\]&\%\$\-"\s]+/) {
chomp;
$hash{$_}++ if (/^\p{IsLower}/); #Unicodeklasse für Kleinbuchstaben
print $_." ".$hash_lc{$_}."\n";
}
}
Und als Ergebnis erwarte, dass ich Frequenzliste aus allen diesen Dateien bekomme, aber bei mir kommt der Fehlermeldung: readline() on closed filehandle IN..
Schöne Grüsse,
LiNa
Comment