[R] ReadLine qui tourne en boucle
Posté : lun. 14 févr. 2011 17:26
Re bonjour,
J'ai un petit soucis, j'ai un programme qui est sensé lire les lignes d'un fichier texte afin de leur faire subir un sort atroce.
Petit problème : il me lit la 1er ligne en boucle, et je ne vois vraiment pas ce qui ne l'empêche de tourner en rond... ou plutôt le contraire....
Je suis à votre disposition si vous avez besoin d'infos complémentaires.
J'ai un petit soucis, j'ai un programme qui est sensé lire les lignes d'un fichier texte afin de leur faire subir un sort atroce.
Petit problème : il me lit la 1er ligne en boucle, et je ne vois vraiment pas ce qui ne l'empêche de tourner en rond... ou plutôt le contraire....
Code : Tout sélectionner
$fic_PRU = "***\traitement_multiple_ajout_PRU.txt" ; on défini le chemin du fichier
if FileOpen($fic_PRU,0) Then
MsgBox(1,"1","fichier chargé") ; si le fichier n'est pas ouvert correctement, on arrête tout
While 1
$line_actu = FileReadLine($fic_PRU) ; on lit la ligne
If @error = -1 Then ExitLoop ; si c'est la dernière on sort
MsgBox(1,"2","premiere ligne : "&$line_actu)
$Machine_PRU_left=StringLeft ($line_actu, 1 )
$Machine_PRU_right=StringRight ($line_actu, 5 )
$res_isdigit=StringIsDigit($Machine_PRU_right)
if StringLen($line_actu)=6 And $Machine_PRU_left = "M" And $res_isdigit=1 Then ; petit test afin de savoir si les entrées sont au bon format
.
.
.
If _IsChecked($LOURME) then ; on traite le cas concerné
$Groupe = "PARTNER"
$Serveur = "***"
$description_PRU = "PARTNER"
MsgBox(1,"4","variables renseignées, prochaine étape création du compte"&@CRLF&"$line_actu : "&$line_actu&@CRLF&"$groupe : "&$Groupe&@CRLF&"$serveur : "&$serveur)
CreateAccount($line_actu,$line_actu,"***",$Groupe,$Serveur,$description_PRU); petite fonction récupérée sur ce site même et modifiée par mes soins
;~ MsgBox(1,"5","compte créé")
GUICtrlSetState($Pic1, $GUI_SHOW)
;~ MsgBox(1,"6","image affichée")
EndIf
.
.
.
Else
MsgBox(64,"Erreur","La ligne n'est pas au bon format elle doit commencer par la lettre M et etre suivi de 5 chiffres décimaux."&@CRLF&"partie gauche : "&$Machine_PRU_left&@CRLF&"partie droite :"&$Machine_PRU_right&@CRLF&"resisdigit : "&$res_isdigit)
EndIf
WEnd
FileClose($fic_PRU) ; on referme le fichier après avoir fini.
Else
MsgBox(64,"Erreur","Le fichier 'traitement_multiple_ajout_PRU.txt' n'est pas présent")
EndIf