Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
XTRAIL
/
andre
/
PERL
:
codage.pl
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
#use strict; #use warning; $fichier = "PAT.csv"; my %min_PAT_HT = (); # tableau associatif vide my %max_PAT_HT = (); my %min_HT = (); my %max_HT = (); %test_name = (); my %valeur = (); traitement(); ###################################### open (Handle, $fichier) || die ("Impossible d'ouvrir le fichier $fichier!"); while ($lignes = <Handle>) { ($TEST,$PROPOSAL_MIN,$PROPOSAL_MAX,$ACTUAL_MIN,$ACTUAL_MAX,$TEST_NAME) = split( ',', $lignes); $min_PAT_HT{$TEST} = $PROPOSAL_MIN; $max_PAT_HT{$TEST} = $PROPOSAL_MAX; $test_name{$TEST} = $TEST_NAME; } @liste_triee = sort( tri_numerique keys %min_PAT_HT); # nouveau tableau avec les clefs triees $nbre_test=@liste_triee; print "Global: $nbre_test \n"; #retourne une liste (table) contenant les cl�s de la table de hash. @infos_cles = keys %hash; @infos_valeurs = values %hash; for ($i=0; $i<@liste_triee; $i++) { $r1=$test_name{$liste_triee[$i]}; $r2=$min_PAT_HT{$liste_triee[$i]}; print " ------------>$i:$liste_triee[$i]: $r1 : $r2 \n"; } ###################################### sub tri_numerique { if($a < $b) { return -1; } elsif($a == $b) { return 0; } else { return 1; } } ###################################### close (Handle); @lignes = (""); open(HANDLE, "+<log.txt") || die "fichier non trouv�\n"; # ouverture en lecture / �criture @lignes=<HANDLE>; chomp($lignes=$lignes); for ($i=0; $i<@lignes; $i++) { ($TEST,$PROPOSAL_MIN,$PROPOSAL_MAX,$ACTUAL_MIN,$ACTUAL_MAX,$TEST_NAME)=split(/\|/, $lignes[$i]); $min_PAT_HT{$TEST} = $PROPOSAL_MIN; $max_PAT_HT{$TEST} = $PROPOSAL_MAX; $test_name{$TEST} = $TEST_NAME; } ###################################### open (NEWFICH, ">test.txt"); $blanc=" "; #$len1 = length($datas[2]); #print ("La longueur du spaceur : $len1"); #$len1 = length($datas[2]); #print ("La longueur de la ligne est : $len1"); $un="essai"; $len2 = length($un); $ch=substr($blanc,$len2+1); $len3 = length($ch); print ("La longueur du spaceur : $len3"); $res=$un.$ch; $len3 = length($res); print ("bilan : $len3 \n"); $datas[1]=$res; $r=join('|', @datas); print NEWFICH $r; $extract_unites=$datas[1]; $extract_unites =~ s/[.0-9]| //gi; # supression des chiffres et du point print "Unit�s:$extract_unites\n"; seek(HANDLE,100,1); $contenu = <HANDLE>; print ("Le contenu de la ligne est : $contenu"); ###################################### sub traitement() { charge(); affiche(); action(); } ###################################### sub action() { $taille = keys(%valeur); while (($cles, $contenu) = each(%valeur)) { $r1=$test_name{$cles}; print "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz $r1 \n"; } @pipo = keys(%test_name); # Renvoie un tableau dans un ordre non pr�visible print "HHHHHHHHHHHHHHHHH @pipo\n"; for ($i=0; $i<@pipo; $i++) { print ">>>>>>>>>>>>>>>>$pipo[$i]<<<<<<<<<<<<<<<<<<<<<<\n" } while ($clef = each(%valeur)) { $qiqi=$test_name{$clef}; #print "la cle $clef est associ� avec: $qiqi\n"; } } ###################################### sub affiche() { $taille = keys(%valeur); while (($cles, $contenu) = each(%valeur)) { print "$cles correspond � $contenu\n"; } } ###################################### sub charge() { @lignes = (""); open(F, "<data.txt") || die "fichier non trouv�\n"; while ($lignes = <F>) { ($TEST,$MIN) = split(' ', $lignes); $valeur{$TEST} = $MIN; } close (F); } ######################################