Accès et recherche dans un gros fichier texte (10 000 lignes)

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Avatar du membre
mikell
Modérateur
Modérateur
Messages : 5715
Enregistré le : dim. 29 mai 2011 16:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Accès et recherche dans un gros fichier texte (10 000 lignes)

#21

Message par mikell » lun. 12 sept. 2016 16:07

'' Fichier d'aide > AutoIt > Language Reference > Variables > Arrays'' a écrit : You can use up to 64 dimensions in an Array.
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )

jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 1981
Enregistré le : lun. 30 mars 2009 21:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: Accès et recherche dans un gros fichier texte (10 000 lignes)

#22

Message par jchd » lun. 12 sept. 2016 16:15

En théorie seulement. En pratique : 16 non 24 (*), sauf si l'on accepte les dimensions "bidon" [1]

(*) voir correctif ci après :oops:
Modifié en dernier par jchd le lun. 12 sept. 2016 22:28, modifié 1 fois.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.

amphase
Niveau 3
Niveau 3
Messages : 35
Enregistré le : lun. 29 août 2016 23:28
Status : Hors ligne

Re: Accès et recherche dans un gros fichier texte (10 000 lignes)

#23

Message par amphase » lun. 12 sept. 2016 21:23

Je remercie orax et jchd pour leur vigilance. Bien évidement, il s'agit ici de tableaux 2D de 5 colonnes de la forme $aArray[n][5]. Sincèrement désolé si j'ai induit quelqu'un en erreur. No limit à AutoIt ! J'ai juste montré les miennes. Je vais cacher ma honte par là... :oops:

jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 1981
Enregistré le : lun. 30 mars 2009 21:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: Accès et recherche dans un gros fichier texte (10 000 lignes)

#24

Message par jchd » lun. 12 sept. 2016 22:26

Je corrige ma propre erreur : la limite en nombre de dimensions est 24 et non 16. <-- Pan sur le bec !

J'explique quand même vite fait pourquoi le nombre de dimensions est limité à 24 en pratique.
Cette définition : $a[1][1[1][1] est certes techniquement une array à 4 dimensions mais elle est structurellement équivalente à une variable simple, car $a ne peut contenir qu'un seul élément, écrit $a[0][0][0][0]. Pour qu'une valeur de dimension ne soit pas inutile ou du moins non significative, elle doit être au moins égale à 2.

Sachant que les array AutoIt ne peuvent contenir plus de 2^24 (16 777 216) éléments, il vient que le nombre maximum de dimensions significatives d'une array est 24 et est obtenu par une déclaration du type :
Local $a[2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2][2]

On peut certes introduire 64-24 = 40 dimensions "bidon" en mettant autant de [1] qu'on pourra, mais à part compliquer l'écriture et ralentir l'accès, on ne changera pas significativement la structure ainsi créée.

Ceci dit, il est quand même rarrissime d'avoir à manipuler plus de 24 dimensions.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.

Répondre