IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

[Debutant] concept lire et manup fichier txt


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut [Debutant] concept lire et manup fichier txt
    Familier avec la programation non objet (Fortran), mais ayant fais un peu de java (il y a plus d un an de ca), j aurais une chtite question sur comment proceder.

    Admetons que j ai un fichier txt contenant plusieurs nombres sur une meme ligne et ce sur plusieurs lignes.
    Admettons donc que je veuille lire ce fichier et effectuer des operations sur ces valeurs.

    En fortran, je declarerais symplement un vecteur avec le bon nombre de colonne et ligne et je stokerais dans ce tableau.

    Mais en VB, comment proceder ?

    -1- Le bon moyen de proceder est il d utiliser une Arraylist ?

    -2- Si oui, on stoke chaque nombre en utilisant la method add je supose. Mais comment alors differencier chaque ligne ? Car on ne fait qu ajouter un element a la suite de la liste a chaque add non ?

    -3- Tjs si oui, les elements stokes ne sont alors pas des nombres mais des objets je pense. En java, il faut alors caster l objet pour pouvoir faire des operations sur un des elements. Faut il le faire en vb et si oui comment please ?

    -4- C moi qui cherche pas ou il faut, ou c la galere en vb pour connaitre les methodes applicables a une classe. (j utilise l onglet aide de Visual Basic 2005 Express Edition)

    Merci a celui qui qura le courage de repondre a un si long message

  2. #2
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Arf pas de reponse.

    Je reformule donc ma question de base (Car j avoue que ce n etait ptet pas clair).

    Si on a un fichier contenant :

    1 234 5489
    65 658 154
    45 98 653
    45896 21 2566

    (soit 4lignes et 3 colonnes)

    pour sauver et manipuler c differents nombres, il vaut muieux utiliser "Arraylist" ou par exemple "Matrix" ?

    Merci

  3. #3
    Membre éprouvé
    Inscrit en
    Mars 2007
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 88
    Par défaut
    Salut,

    si tu ne veux que stocker tes données, je te conseille d'utiliser un tableau bi-dimensionnel.

    Dim monTableau(4, 3) As Integer

    Et de créer un petit boue de code pour Lecture\Ecriture (Ca devrait pas être long)

    Il existe beaucoup d'autre solutions : L'usage de l'objet Matrix est un peu bourin, mais en est une, de même que l'objet DataSet.

    @ +

  4. #4
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Tiens bizarre, j etais persuade qu on allait me repondre utiliser Arraylist.

    Si j utilise un tableau, c bcp plus proche que ce que je connais.

    Mais comment lire les nombres quand ils sont separe par un espace stp ?

    Car je ne connais que la classe StreamReader et la methode .ReadLine() qui me lit pas un nombre mais tout une ligne.

    Merci et desole pour les questions a deux francs.

  5. #5
    Membre éprouvé
    Inscrit en
    Mars 2007
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 88
    Par défaut
    La méthode .ReadLine() te retourne un Objet String.
    Tu n'a qu'à utiliser la méthode .Split(" ") (vérifie la syntaxe)

    Il te renvoie un tableau unidimensionnel en String. Il te suffit de faire une petite boucle pour caster (CInt()) et intégrer à ton tableau bi-dimensionnel.

  6. #6
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 342
    Par défaut
    Merci pour ton aide Lunelame

    Suivant t conseils, je viens d aboutir a un truc qui marche, mais honnetement j ai l impression de sortir la grosse artillerie pour pas grand chose.

    Tout commentaire sur mon code serait le bienvenu Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Dim finame As String = "C:\Download\Colomn"
            Dim fi As FileInfo = New FileInfo(finame)
            Dim sr As StreamReader = fi.OpenText
            Dim line As String
            Dim totline As Integer = 5
            Dim totcol As Integer = 4
            Dim nline As Integer
            Dim ncol As Integer
            Dim Table(totline, totcol) As Integer
     
            For nline = 1 To totline
                line = sr.ReadLine()
                Dim TestArray() As String = Split(line)
                For ncol = 1 To totcol
                    Table(nline, ncol) = CInt(TestArray(ncol))
                    Console.Write(Table(nline, ncol))
                    Console.Write("  ")
                Next
                Console.WriteLine()
            Next
            sr.Close()

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lire dans un fichier .txt
    Par donutsk8r dans le forum MATLAB
    Réponses: 2
    Dernier message: 08/09/2009, 08h46
  2. Debutant : Export Feuille Excel vers fichier .txt
    Par mat75019 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/12/2008, 07h32
  3. Ouvrir, lire, écrire, ferme fichier .txt
    Par greg26 dans le forum VB.NET
    Réponses: 13
    Dernier message: 19/09/2007, 17h12
  4. lire données dans fichier txt
    Par flo456 dans le forum Langage
    Réponses: 5
    Dernier message: 14/09/2006, 08h01
  5. lire dans un fichier .txt
    Par Baptiste Wicht dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 17/12/2005, 18h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo