[R] Manipulation d'Array

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

[R] Manipulation d'Array

#1

Message par locos974 »

Bonjour,

Voilà tout, étant sur un petit projet pour une entreprise, je rencontre un légé soucis sur la gestion des Array en AutoIt.

J'ai donc mon Array :

Code : Tout sélectionner

Dim $Annonces[10000][4]
Qui peut contenir 10 000 éléments de 4 colonnes chacun.
Je voudrais y mettre des valeurs (String/Int) mais je me retrouve confronté à ce problème avec des erreurs quand j'essaye de stocké les valeurs..

J'ai regardé l'UDF "Containers' mais reste trop poussé pour se dont j'ai besoin.
Google ne m'a pas plus aidé.

Merci d'avance !
Modifié en dernier par locos974 le lun. 29 sept. 2014 21:59, modifié 2 fois.
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Manipulation d'Array

#2

Message par mikell »

locos974 a écrit :... mais je me retrouve confronté à ce problème avec des erreurs quand j'essaye de stocké les valeurs..
Heu oui mais encore ? confronté à quel problème ?
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Manipulation d'Array

#3

Message par locos974 »

J'ai un certains id qui correspond à une annonce, et j'aimerais lui stocké 5 valeurs, titre, description, ..
Je ne voie pas la manière de comment procédé :mrgreen: .
Cordialement Locos974.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Manipulation d'Array

#4

Message par TommyDDR »

locos974 a écrit :quand j'essaye de stocké les valeurs
Peut être qu'en fournissant votre code + message d'erreur, votre problème se résoudrait plus rapidement ;)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Manipulation d'Array

#5

Message par locos974 »

Y'a pas vraiment besoin de code mais si vous insistez et si cela peut conduire à la résolution du sujet le voici :

Code : Tout sélectionner

Dim $Annonces[10000][4]
 
J'ai essayé ça pour stocké mes valeurs :

Code : Tout sélectionner

$Annonces[$Id] = [IniRead($Path, "ANNONCE", "titre", ""), IniRead($Path, "ANNONCE", "categorie", ""), IniRead($Path, "ANNONCE", "rubrique", ""), IniRead($Path, "ANNONCE", "description", "")]
 
Et aussi ça :

Code : Tout sélectionner

$Annonces[$Id][1] = IniRead($Path, "ANNONCE", "titre", "")
$Annonces[$Id][2] = IniRead($Path, "ANNONCE", "categorie", "")
$Annonces[$Id][3] = IniRead($Path, "ANNONCE", "rubrique", "")
$Annonces[$Id][4] = IniRead($Path, "ANNONCE", "description", "")
 
Et je me retrouve avec :
==> Subscript used with non-Array variable.:
Je peux pas faire plus clair..
J'ai regardé avant de posté comment faire pour les stockés mais il s'avère qu'il y est plusieurs façon de procédé. Faut-il trouvé laquelle ?
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Manipulation d'Array

#6

Message par mikell »

En supposant que $Id soit bien un nombre ...

Code : Tout sélectionner

Dim $Annonces[10000][4]

$Annonces[$Id][0] = IniRead($Path, "ANNONCE", "titre", "")
$Annonces[$Id][1] = IniRead($Path, "ANNONCE", "categorie", "")
$Annonces[$Id][2] = IniRead($Path, "ANNONCE", "rubrique", "")
$Annonces[$Id][3] = IniRead($Path, "ANNONCE", "description", "")
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Manipulation d'Array

#7

Message par locos974 »

Bien sûr.. La petite correction ( si ça en est une :roll: ) ne marche pas et me retourne la même erreur, quelque chose de manquant ? Initialisation ou autre ?

Ou sinon en regardant de plus près le wiki de AutoitScript.com j'ai pu voir ce genre de chose :

https://www.autoitscript.com/wiki/Array ... _in_Arrays

Mais j'aimerais mieux la manière dont je l'exprime actuellement.
Cordialement Locos974.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Manipulation d'Array

#8

Message par mikell »

Apparemment comme TommyDDR l'a laissé entendre la cagade vient d'une autre partie du code, peut-être d'une boucle ou d'une discrète erreur de syntaxe
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Manipulation d'Array

#9

Message par jguinch »

En regardant tes deux codes, deux choses m'interpellent...

$Annonces[$Id] = [IniRead($Path, "ANNONCE", "titre", ""), IniRead($Path, "ANNONCE", "categorie", ""), IniRead($Path, "ANNONCE", "rubrique", ""), IniRead($Path, "ANNONCE", "description", "")]
On ne peut pas faire comme ça, on est obligé de le faire en plusieurs fois (comme dans ton deuxième exemple).



$Annonces[$Id][1] = IniRead($Path, "ANNONCE", "titre", "")
$Annonces[$Id][2] = IniRead($Path, "ANNONCE", "categorie", "")
$Annonces[$Id][3] = IniRead($Path, "ANNONCE", "rubrique", "")
$Annonces[$Id][4] = IniRead($Path, "ANNONCE", "description", "")

La c'est mieux, mais il ne faut pas oublier que les index de tableaux commencent à 0, pas à 1...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Manipulation d'Array

#10

Message par locos974 »

mikell a écrit :Apparemment comme TommyDDR l'a laissé entendre la cagade vient d'une autre partie du code, peut-être d'une boucle ou d'une discrète erreur de syntaxe
A croire que non ? :shock:
De même pour vous Jguinch.
Je vérifie bien. Mais non, il y a un problème..

Il s'avère que j'exploite l'Array dans une function et qui ne la reconnait pas :twisted: ..
Donc le problème est trouvé..

Au point de paraître con, la variable été déjà utilisé..

Problème finalement résolu, merci de votre aide !
Cordialement Locos974.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Manipulation d'Array

#11

Message par TommyDDR »

locos974 a écrit :Au point de paraître con, la variable été déjà utilisé..
C'est bien pourquoi à partir de maintenant je me refuse de répondre à toute personne ne postant pas son code !
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Répondre