Page 1 sur 1
[..] problème avec des array
Posté : mer. 18 nov. 2009 18:25
par coke
Bonjour,
Je ne comprend pas pourquoi j'ai le message d'erreur suivant
"Array variable has incorrect number of subscripts or subscript dimension range exceeded.:"
dans le code suivant
Code : Tout sélectionner
#include <string.au3>
#include <array.au3>
$file = FileOpen(@ScriptDir & "\complet.xml", 0)
If $file = -1 Then
MsgBox(0, "Erreur", "Fichier introuvable !")
Exit
EndIf
$chars = FileRead($file)
$array = _StringBetween($chars, '<programme start="2009111720', "</programme>")
_ArrayDisplay($array)
$search = "C1.telerama.fr"
;$search = "2009"
$result= _ArrayFindAll($array, $search,0,0,0,1)
_ArrayDisplay($result)
$nbcol = UBound($result)
for $i=0 to $nbcol step 1
$tmp = $result[$i]
;~ MsgBox (0,"infos", "ligne :" & $tmp)
$test = StringSplit($array[$tmp]," ")
Next
_ArrayDisplay($test)
Merci de m'eclairer
Re: [..] problème avec des array
Posté : mer. 18 nov. 2009 19:23
par sylvanie
un array de dimension n s'étale de l'indice 0 à n - 1
Re: [..] problème avec des array
Posté : jeu. 19 nov. 2009 09:36
par coke
Merci beaucoup sa marche nikel. une autre petit question dans ma boucle je voudrais qu'il integre dans l'array $test l'enssemble des donnees de $array mais specifié par l'index de l'array $result or dans ma boucle il ne me met qu'un enregistrement il ne cumul pas il remplace.
Merci d'avance pour votre aide
Re: [..] problème avec des array
Posté : jeu. 19 nov. 2009 10:08
par sylvanie
indice : utiliser _ArrayInsert dans une boucle
Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 10:26
par coke
Je reviens vers vous car g avancé dans mon code mais la je bloque et je comprend pas pourquoi
Code : Tout sélectionner
#include <string.au3>
#include <array.au3>
#include <array2D.au3>
#include <datefr.au3>
local $finish[1][3]
$file = FileOpen(@ScriptDir & "\complet.xml", 128)
If $file = -1 Then
MsgBox(0, "Erreur", "Fichier introuvable !")
Exit
EndIf
$chars = FileRead($file)
;~ $array = _StringBetween($chars, '<programme start="2009111720', "</programme>")
$array = _StringBetween($chars, '<programme', "</programme>")
;~ _ArrayDisplay($array)
$search = "C1.telerama.fr"
;$search = "2009"
$result= _ArrayFindAll($array, $search,0,0,0,1)
;~ _ArrayDisplay($result)
$nbcol = UBound($result)
$datenow=_NowDate()
$timenow=_NowTime()
for $i=0 to $nbcol-1 step 1
$tmp = $result[$i]
;~ MsgBox (0,"infos", "ligne :" & $tmp)
$test = StringSplit($array[$tmp],">")
$a=$test[3]
$dateprog=(StringTrimLeft(StringLeft($test[1],23),8))
$annee = stringleft($dateprog,4)
$mois = stringmid($dateprog, 5,2)
$jour= stringmid($dateprog, 7,2)
$hh= stringmid($dateprog, 9,2)
$mm=stringmid($dateprog, 11,2)
$ss=StringRight($dateprog,2)
_Array2D_Add($finish, StringTrimRight($a,7))
$finish[$i+1][1] = $jour&'/'&$mois&'/'&$annee
$finish[$i+1][2] = $hh & ":" & $mm & ":" & $ss
Next
_Array2D_Display($finish)
;~ MsgBox (0,"infos", "ligne :" & $datenow & $finish[1][1])
$prepa1= _ArrayFindAll($finish, $datenow,0,0,0,2)
_ArrayDisplay($prepa1)
alors je ne comprends pas pourquoi _arraydisplay($prepa1) ne s'affiche pas
je recherche une valeur dans la colonne 2 de l'array $finish mais rien ne marche je devient fou
Merci pour votre aide
Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 19:12
par Tlem
Bonsoir.
Si _ArrayDisplay($prepa1) n'affiche rien, c'est que vraisemblablement $prepa1 n'est pas un tableau.
Vous devez donc vérifier si $finish est bien un tableau et si la fonction _ArrayFindAll() est bien formatée pour votre recherche.
Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 19:27
par coke
je pense que oui car _arraydisplay($finish) m'affiche bien mon tableau a 3 colonne
et mon premier _arrayfindall au début du script fonctionne et c sa que je ne comprend pas, il ne fait pas de recherche dans ma colonne (Col1)
Merci
Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 19:31
par Tlem
La fonction est celle-ci :
Code : Tout sélectionner
_ArrayFindAll(Const ByRef $avArray, $vValue[, $iStart = 0[, $iEnd = 0[, $iCase = 0[, $iPartial = 0[, $iSubItem = 0]]]]])
Mais il semble que dans cette ligne :
vous n'indiquez pas
$iSubItem.

Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 20:12
par coke
g effectivement corriger cet oubli mais sa na rien changé
sa ne s'affiche toujours pas
Re: [..] problème avec des array
Posté : dim. 22 nov. 2009 21:20
par Tlem
Vous ne donnez pas assez d'éléments pour qu'on puisse vous aider correctement.
Vous devrez donc chercher par vous même votre erreur.
