Valeur non initialisé non nulle

Résolu
Nirdaven Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
-
Salutation tous le monde,

Je m'adresse à vous car j'ai un problème dans un script et je ne comprend pas d'où il vient...
Je m'explique en vous montrant une partie du programme :

@fic=<FILE>;
$taille=@fic;
foreach (@fic)
{	
	if ( $l >= (8+$nbparam) && $l < $taille )
	{
		$save=$_;
		chomp ($save);
		$save=~tr/./,/;
		$i=0;
		while ( defined($save) == 1 )
		{
			($j,$save)=($save =~ /^(-?\d*,*\d*);(.*)/);#   <--- valeur de $j ?
			if ( !$j )
			{
				$j=999999;
				$hash->{$k}->{$i}=$j;
			}
			else
			{
				print "$j\n";#                        <---- Vérification
				$j=~tr/,/./;
				$hash->{$k}->{$i}=$j;
			}
			$i++;
		}
		$k++;
	}
	$l++;
}


Je passe en entré un fichier .csv de la forme suivante :
25.0;70;123;52;;
999;18;82;5;;
...

et lorsque je lance mon programme, il ne me trouve pas d'erreur, mais je n'ai jamais la valeur 999999 à la place des "trou"/valeurs manquantes. J'ai essayé de remplacer if ( !$j ) (je suis sur et certain que l'erreur vient de la) par
- $j eq undef
- !defined($j)
- $j eq ""
- $j eq ''
mais rien ne marche alors que le print de vérification affiche bien rien a l'écran...
Auriez vous des idées pour récupérer les valeurs et mettre un chiffre exorbitant à la place des trous?

Merci d'avance de vos réponses

Nirdaven



1 réponse

Nirdaven Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
merci de vos réponses -_-'
je me suis débrouillé avec un split et une boucle qui vérifie qu'il n'y ai pas valeur "" dans les cases du tableau donné par le split
0