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 :

Ouvrir, lire, écrire, ferme fichier .txt


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 42
    Points : 28
    Points
    28
    Par défaut Ouvrir, lire, écrire, ferme fichier .txt
    Bonjour à tous,

    Bon j'ai fais le tour d'un peu tous les site et j'arrive pas résoudre mon problème.
    Comment ouvrir, puis lire, puis écrire, puis fermer un fichier texte en visual basic (j'ai le 2005) (j'arrive à le créer comme ça et ca marche):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    FSys = CreateObject("Scripting.FileSystemObject")
                MonFic = FSys.CreateTextFile("C:MonFichier.txt")
    j'ai vu sur beaucoup de site il fallait employer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Open "c:\test.txt" For Input As #1
    mais déjà la mon open de fonctionne pas
    Comment faire?
    Si vous pouviez me donner un exemple court pour chacune des méthodes ca serait super super sympa
    Merci d'avance
    @ bientot

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Euh, t'es sûr que c'est du VB.NET ça ? Le Scripting.FileSystemObject est généralement utilisé en VBScript ou VBA. Quant à la syntaxe Open... For input... c'est un truc hérité de VB6 et versions précédentes, je ne suis pas sûr que ce soit encore supporté.
    En .NET on fait plutôt comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim f as StreamReader
    Dim line as String
    f = File.OpenText("C:\test.txt")
    ' ou encore f = New StreamReader("C:\test.txt")
    line = f.ReadLine
    While line <> Nothing
        ' Tu fais ce que tu veux avec ta ligne... par exemple :
        Console.WriteLine(line)
        line = f.ReadLine
    Wend
    Pour plus de détails, regarde la classe StreamReader. De plus il y a surement déjà pas mal de posts dans le forum qui parlent de ça...

  3. #3
    Bz
    Bz est déconnecté
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 176
    Points : 127
    Points
    127
    Par défaut
    Citation Envoyé par greg26 Voir le message
    Bonjour à tous,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Open "c:\test.txt" For Input As #1
    ca, c'etait en vb6

  4. #4
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Tu peux aussi utiliser la classe FileSteam dans le system.IO
    Ne pas oublier :

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    FileStream tu veux dire je suppose ?
    A moins que tu ne fasses référence à la "vapeur de fichier" ?

  6. #6
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par tomlev Voir le message
    FileStream tu veux dire je suppose ?
    A moins que tu ne fasses référence à la "vapeur de fichier" ?
    Yep

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    Bon et bien merci à tous pour votre aide, je vais voir un peu tout ça
    Je mettrais résolu quand j'aurais fait tout ce que je veux, sinon je poserais d'autres questions ici

  8. #8
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 56
    Points : 30
    Points
    30
    Par défaut
    Moi je fais comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Imports System
    Imports System.IO

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Dim TOTO As System.IO.StreamWriter
    TOTO = My.Computer.FileSystem.OpenTextFileWriter("c:\IseosViewer\" & serveur(1), True)
    TOTO.WriteLine("Toto tata" & vbcrlf & "Titi")
    TOTO.Close()
    Mais si le fichier existe déjà, il écrit sous ce qui est déjà écrit, du coup je supprime avant ré-écriture :s Comment faire autrement ?

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par seb974 Voir le message
    Moi je fais comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Imports System
    Imports System.IO

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Dim TOTO As System.IO.StreamWriter
    TOTO = My.Computer.FileSystem.OpenTextFileWriter("c:\IseosViewer\" & serveur(1), True)
    TOTO.WriteLine("Toto tata" & vbcrlf & "Titi")
    TOTO.Close()
    Mais si le fichier existe déjà, il écrit sous ce qui est déjà écrit, du coup je supprime avant ré-écriture :s Comment faire autrement ?
    Effectivement, ça marche aussi... mais la seule chose qui change finalement c'est la façon de créer le StreamWriter.
    Attention quand même, le namespace My est spécifique à Visual Basic... quoi qu'on doit aussi pouvoir l'utiliser en C# en référençant l'assembly qui va bien

    EDIT: oups, j'avais pas vu la question à la fin... mets False à la place de True dans l'appel à My.Computer.FileSystem.OpenTextFileWriter, ça devrait écraser le fichier au lieu d'écrire à la suite

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    Bonjour à tous,
    heuresement que j'ai laissé ouvert le post
    Quelqu'un pourrait me dire comment lire une ligne spécial dans un fichier (par exemple la ligne n°3)?
    Merci d'avance

  11. #11
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par greg26 Voir le message
    Bonjour à tous,
    heuresement que j'ai laissé ouvert le post
    Quelqu'un pourrait me dire comment lire une ligne spécial dans un fichier (par exemple la ligne n°3)?
    Merci d'avance
    Pas possible faut tout lire et splitter ou alors lire ligne à ligne et récupéré celle que tu veux. Sinon tu peux positionner le flux à un entroit précis si tu connais la place (en octet) de la ligne 3

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    ok merci donc je vais tout lire, tout stocker dans un tableau et récupérer ce qui m'intéresse

  13. #13
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par greg26 Voir le message
    ok merci donc je vais tout lire, tout stocker dans un tableau et récupérer ce qui m'intéresse
    Un petit tag pour faire plaisir aux modos ?

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 42
    Points : 28
    Points
    28
    Par défaut
    c'est fait
    non j'attendais de voir si j'avais plus de problème pour le mettre

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

Discussions similaires

  1. Manipulation fichier: ouvrir/lire/écrire/sauver
    Par kurtaliasdiablo dans le forum VBScript
    Réponses: 8
    Dernier message: 30/06/2009, 18h25
  2. lire données dans fichier txt
    Par flo456 dans le forum Langage
    Réponses: 5
    Dernier message: 14/09/2006, 08h01
  3. [VBA-Excel] Ouvrir un lot de fichier txt dans Excel
    Par Trollakuir dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/06/2006, 10h02
  4. lire/écrire un fichier stocké dans le JAR ?
    Par SheikYerbouti dans le forum Entrée/Sortie
    Réponses: 11
    Dernier message: 24/03/2006, 10h37
  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