Perl: lecture d'un repertoire et de fichiers
Fermé
tonguim
Messages postés
47
Date d'inscription
mercredi 7 septembre 2005
Statut
Membre
Dernière intervention
27 février 2015
-
11 mai 2009 à 21:59
tonguim Messages postés 47 Date d'inscription mercredi 7 septembre 2005 Statut Membre Dernière intervention 27 février 2015 - 12 mai 2009 à 22:00
tonguim Messages postés 47 Date d'inscription mercredi 7 septembre 2005 Statut Membre Dernière intervention 27 février 2015 - 12 mai 2009 à 22:00
A voir également:
- Perl: lecture d'un repertoire et de fichiers
- Denon perl pro test - Accueil - Audio
- Active perl - Télécharger - Édition & Programmation
- Perl foreach ✓ - Forum Perl
- Perl substitution ✓ - Forum Perl
- [Perl] WWW::Mechanize - Forum Perl
1 réponse
tonguim
Messages postés
47
Date d'inscription
mercredi 7 septembre 2005
Statut
Membre
Dernière intervention
27 février 2015
1
12 mai 2009 à 22:00
12 mai 2009 à 22:00
Bonjour,
j'ai une erreur de division (division par 0); je pense que les variables @elements1 et @elements2 sont vides alors qu'elles sont censées obtenir leur contenu de la boucle [QUOTE]while ((($debut, $fin) = $result =~ /debut\s+([0-9]+).+?fin\s+([0-9]+)/g) and $i < 3)[/QUOTE]
j'ai une erreur de division (division par 0); je pense que les variables @elements1 et @elements2 sont vides alors qu'elles sont censées obtenir leur contenu de la boucle [QUOTE]while ((($debut, $fin) = $result =~ /debut\s+([0-9]+).+?fin\s+([0-9]+)/g) and $i < 3)[/QUOTE]
#!/usr/bin/perl -w use strict; use warnings; use diagnostics; use CGI qw/:standard/; use CGI::Carp 'fatalsToBrowser'; our $dir = '/chemin/Fichiers/'; our $meanOfLenghts1; our $meanOfLenghts2; our $mimetype; our $numberOfFilesListed; our $sum2; our $sum1; our $file; our $i; our @elements; our @elements1; our @elements2; our $fh, our @length; #our $length; our @listeFichiersMem; our $debut; our $fin; our $line; our $result; our $value; my $cgi = CGI -> new(); # read all entries in the directory: opendir DIR, $dir or die "Cannot open $dir $!"; @listeFichiersMem = grep /\.txt$/, readdir DIR; closedir DIR; #printf $cgi -> header("Content-type: $mimetype; charset=utf-8; Content-Disposition: attachment;"); foreach $file (@listeFichiersMem) { printf "Hallo test"; $i = 1; $numberOfFilesListed++; open $fh, "<", $file or die $!; print "$file" . "\n"; while ($line = $fh) #read each line from FILE. { chomp ($line); while ((($debut, $fin) = $result =~ /debut\s+([0-9]+).+?fin\s+([0-9]+)/g) and $i < 3) { $length[$i] = $fin - $debut; # Calculation of the lenght of the first segment, then the lenght of the second segment #push(@elements[$i], $length[$i]); #Push the 2 computed lenghts into a table to compute the mean of lenght for the 2 segments $elements[$i] -> push($length[$i]); $i++; } } close $fh; } foreach $value (@elements1) { $sum1 += $value; printf $sum1; } foreach $value (@elements2) { $sum2 += $value; } $meanOfLenghts1 = $sum1/$numberOfFilesListed; $meanOfLenghts2 = $sum2/$numberOfFilesListed; printf ("%d %d", $meanOfLenghts1, $meanOfLenghts2);