J'ai un soucis avec un script de traitement de variable.
ex: une liste de variables pr=E9sent=E9es comme suit:
#################################
etc...
$Nbr =3D Nombre de fiches dans: C:/Datas/
for ($i=3D1; $i<=3D$Nbr; $i++)
{
do "C:/Datas/$i.db";
use vars qw($VAR1 $VAR2 $VAR3 $VAR4 $VAR5 $VAR6 $VAR7 $VAR8 $VAR9
$VAR10);
my ($VAR1, $VAR2, $VAR3, $VAR4, $VAR5, $VAR6, $VAR7, $VAR8, $VAR9,
$VAR10);
# je souhaite copier copier cette liste dans une nouvelle mais... sous
cet aspect:
#$VAR3, $VAR5, $VAR1, $VAR8, $VAR2, $VAR4, $VAR6, $VAR10, $VAR9, $VAR7
soit:
if ($VAR42 eq 'toto') {
open VAR, ">>C:/toto.txt;
########Mon soucis est la !!!######
print VAR "$VAR3, , ,$VAR8, $VAR2, $VAR4, $VAR6, , $VAR9, $VAR7";
close VAR;
}
$count =3D$Nbr + 1;
close (ORGDB);
#####################################
for ($i=3D1; $i<=3D$Nbr; $i++)
{
open (ORGDB,"<C:/Toto.txt");
@ODB=3D<ORGDB>;
close (ORGDB);
foreach $rec (@ODB){
chomp($rec);
($VAR1, $VAR2, $VAR3, $VAR4, $VAR5, $VAR6, $VAR7, $VAR8, $VAR9,
$VAR10)=3Dsplit(/\"/,$rec);
}
open VAR, ">C:/Datas2/$count.db"; # sauvegarde des variables dans un
nouveau dir
print VAR Data::Dumper->Dump( [$VAR1, $VAR2, $VAR3, $VAR4, $VAR5,
$VAR6, $VAR7, $VAR8, $VAR9, $VAR10] );
close VAR;
open (FH, "+< C:/Temp/Liste.txt");
while ( <FH> ) { $addr =3D tell(FH) unless eof(FH) }
truncate(FH, $addr);
close (FH);
unlink <C:/Sis/WWWROOT/cgi-local/ZZComm/Datas/*>;
$count=3D $count -1;
}
etc..
Seulement voil=E0 le r=E9sultat est faux du style n'importe quoi au lieu
de:
La diff=E9rence est que j'ai mis des (,) ou des (\",\") dans la liste
>>C:/toto.txt est c'est ce qui me procure ce probl=E8me. Mais j'ai besoin d=
e , ou de \" pour pouvoir importer la liste dans un soft ! Alors, je vous l=
e demande, comment faire ?
Merci de votre aide
Bon week-end
Cordialement
R=E9gine