je cherche a extraire le nombre de lignes d'un fichier CSV sans faire de boucle car pour l'instant j'utilise le code çi dessous
B4X:
dim nbline as int
stringList = File.Readlist(File.DirAssets,"fichier.csv")
For i = 0 To stringList.Size - 1
tmpstring = stringList.get(i)
nbline = nbline + 1
Log (nbline):
next
Y a-t-il une instruction évitant de faire (des) boucle(s) afin de savoir combien de ligne(s) contients un fichier, voire un fichier CSV ?
Si votre code existant fonctionne, pourquoi avez-vous besoin de connaître le nombre de lignes ?
S'il s'agit de dimensionner un array séparé pour recevoir l'une des colonnes le fichier CSV, utilisez peut-être quelque chose comme ceci :
B4X:
stringList = File.Readlist(File.DirAssets,"fichier.csv")
Dim nbline As Int = stringList.Size '- 1 s'il y a une ligne d'en-tête
Dim Prenom(nbline) As String
Le type List possède déjà des méthodes de tri : stringList.Sort... donc inutile d'en connaitre la taille.
Le remplissage d'une CLV passera forcément par une boucle For ou For Each.
voici un exemple de fichier csv :
a l'aide du programme je sélectionne une valeur de la colone A
si par exemple c'est la valeur 10 (format numérique) présente aux lignes 12, 13, 14 les valeurs de la coloneB soit : 0, 2, 4 s'affichent dans la CLV.
Quand on sélectionne un des 3 items de la CLV, le programme le stocke la valeur de l''item donc 0, 2 ou 4 dans une variable.
Remaque les valeur 0, 2 et 4 sont au format hexadécimal.