VB.Net Tableau

cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 20 août 2007 à 02:34
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 20 août 2007 à 20:06
Salut tout le monde





J'ai essayé quelque truc pour mettre mon fichier texte dans un tableau et j'en suis rendu seulement là... (Voir code ci-bas)
ERREUR #1: J'ai un message d'erreur concernant ma variable Fichier (voir caractère gras et souligné)
Erreur: Value of type 'String' cannot be converted to 'System.Array'

Pourquoi j'ai ce message d'erreur  qu'est ce que je ne fais pas de correct... encore... :(

ERREUR #2 J'ai un message d'erreur disant:
   'Redim' cannot change the number of dimension of an array.

Il est impossible de redimensionner un tableau en Compact Framework ?????

Merci d'avance

Private
Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click




Dim Tableau() As


String

Dim Fichier As


String

Dim ObjetFichier As StreamReader = New StreamReader(AppPath & "\Coord.txt")





While
Not ObjetFichier.EndOfStream
   Fichier = ObjetFichier.ReadLine
   For i AsInteger = 0 To UBound( Fichier ) 'ERREUR #1
      If LineCount = 0
Then
         ReDimTableau(4, LineCount) 'ERREUR #2

      Else
         ReDim
PreserveTableau(4, LineCount) 'ERREUR #2

      End
If
Next


End
While






End
Sub

7 réponses

Baguauda Messages postés 219 Date d'inscription mercredi 31 août 2005 Statut Membre Dernière intervention 28 novembre 2008 1
20 août 2007 à 08:17
1) Ubound prend en paramétre une tableau et non un object de type string.
2) ton tableau n'est pas instancié donc la fonction Redim ne peut pas fonctionné.

tiens pour taider un bon tuto sur les tableau http://plasserre.developpez.com/v1-6tab.htm

juste une petit conseil qui personnelement m'aide.
Ecrit sur papier un algorithme de ce que tu souhaite faire.
Ensuite tu n'auras plus qu'a traduire en code.
0
P0lO Messages postés 65 Date d'inscription mercredi 18 avril 2007 Statut Membre Dernière intervention 12 juin 2008 1
20 août 2007 à 09:04
je t'ai répondu dans ton dernier sujet concernant la démarche à suivre pour mettre ton fichier dans un tableau,...

P0lO
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
20 août 2007 à 13:43
Baguauda Dans le fond, je veux tout simplement faire un tableau de mon fichier texte.

Je veux que ce tableau continne 5 Colonnes par le nombre de lignes que contient mon fichier texte.
Mon séparateur de mon fichier texte est l'espace (" ")

Maisntenant je suis rendu à traduire le code..... et c'est là mon problème.....
J'ai réussi à la faire en VB6 mais en .Net je n'y arrive pas....
0
Baguauda Messages postés 219 Date d'inscription mercredi 31 août 2005 Statut Membre Dernière intervention 28 novembre 2008 1
20 août 2007 à 15:33
Si tu connais la taille de ton tableau n'utilise pas les Redim
Ayant quitté vb depuis longtemps je ne suis pas certain de la synthaxe
Mais cela devrais ressemblé a un truc dans le genre (en utilisant le code de [auteurdetail.aspx?ID=1038650 P0lO])Dim ObjetFichier
As StreamReader =
New StreamReader(AppPath &
"\Coord.txt")
WhileNot ObjetFichier.EndOfStream

Dim nbLigne as integer

WhileNot ObjetFichier.EndOfStream

    nbLigne++

endWhile

DimMonTableau(,) as new string(5,i)

Dim ligne as Integer

WhileNot ObjetFichier.EndOfStream
   Fichier = ObjetFichier.ReadLine

   MonTableau(ligne)= ObjetFichier.ReadLine().Split(" ".ToCharArray())

  ligne++

EndWhile
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
20 août 2007 à 16:15
Je pensais utiliser le Redim à caus ede VB6 o;ù on m'avais dit qu'il était bon d'utiliser ce code...

mais j ene connais pas vraiment la taille de mon tableau,.,, à mois de compter le nombre de ligne du fichier et ensuite redimensionner le tableau ????

J'ai essayé le code de P0LO mais j'en encore une couple d'erreur :(
0
P0lO Messages postés 65 Date d'inscription mercredi 18 avril 2007 Statut Membre Dernière intervention 12 juin 2008 1
20 août 2007 à 16:32
Précise les erreurs tu sais je n'ai jamais fait de VB donc j'y vais un peu à l'instinct en plus les exemple que je te passe je les tape directement ici donc je ne les compiles pas c'est juste pour te donner un ordre d'idée de la démarche à suivre...

P0lO
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
20 août 2007 à 20:06
Re...

J'ai réussi à trouver un code qui ressemble à ce que je veux faire...
Le seul problème c'est que je ne réussi pas à créer un Tableau multidimension

Le code fonctionne très bien pour un tableau 1 dimension... Mais je dois avoir un Tableau qui a 5 Colonnes avec le nombre de Ligne que contient mon fichier texte.
J'ai essayé de créer une variable Tableau(0,0) pour pouvoir le redimension plus tard = Erreur
Le Redim ne fonctionne pas.. enfin je ne sais pas où le mettre pour que ca fonctionne....

PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim Uni As
String
Dim i As
Integer
Dim Tableau(50) AsString'J'écris quoi ici Tableau (0,0) et je le redimensionne plus bas??? Mais où???

Try
   Dim ObjetFichier As StreamReader = New StreamReader(AppPath & "\Coord.txt")

   Do
      Uni = ObjetFichier.ReadLine()
      If Uni IsNothing
Then
         i = i - 1

      Else
         Tableau(i) = Uni
      End
If
      i = i + 1
      TextBox1.Text = Tableau(i)

LoopUntil Uni Is
Nothing
   ObjetFichier.Close()
   i = i - 1
   Catch exc As Exception
      MsgBox("Fichier inexistant")
   EndTry

EXEMPLE FICHIER TEXTE séparateur = " " Espace

Colonne:   #1       #2                #3           #4    #5
                  643 2969.7949 -1306.9490 0.0000 50 
                  665 2976.5231 -1312.9940 -0.0124 50 
                  666 2966.4716 -1325.3946 -0.3610 50 
                  618 2915.9791 -1343.8044 -4.8486 59 
                  619 2924.2131 -1355.3778 -6.6557 21 
                  629 2894.2362 -1366.0733 -7.0095 59 
       1631 2910.8064 -1360.1600 -6.4051 175...
0
Rejoignez-nous