j'ai une erreur à la suite d'un split sur une ligne d'un fichier texte que je parcour dans une boucle while chaque ligne du fichier est construit de la manière suivante : txt;txt;txt;txt;txt
voici mon erreur quand je veux afficher le fichier dans l'explorateur: Erreur d'exécution Microsoft VBScript (0x800A0009) Indice en dehors de la plage: '[number: 2]'
Et voila une partie du script:
Do While not fich.atEndOfStream ligne = fich.readLine tab_cer = split(ligne,";",-1,1) if Request.QueryString("CH") = "G" Then response.write(tab_cer(0)&" - "&tab_cer(1)&" - "&tab_cer(2)&" - "&tab_cer(3)&"<br>")
D'avance merci pour votre aide précieuse
« Dernière Édition: le 19-08-2003 a 13:44:58 par Netah »
<% Set fs = Server.CreateObject("Scripting.FileSystemObject") dir = Server.MapPath("./") F_Path = dir & "\toto.txt"
If fs.FileExists(F_Path) Then Set RF = fs.OpenTextFile(F_Path,1,False) Do While not RF.atEndOfStream ligne = RF.readLine tab_cer = split(ligne,";",-1,1) response.write(tab_cer(0)&" - "&tab_cer(1)&" - "&tab_cer(2)&" - "&tab_cer(3)&"<br>") loop RF.close Set fs=nothing End If %>
J'ai donc cherché à reproduire le message d'erreur. Pour cela j'ai enlevé des infos du fichier texte et ... bingo, voila l'erreur magique. Tu dois manquer de champs dans ton fichier texte par rapport à ce que tu cherches dans ton script. Tu peux vérifier ton fichier texte, vérifier ton script ou ajouter avant la lecteur du fichier :