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 :

Utilisation d'Open pour ouverture de fichier


Sujet :

VB.NET

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut Utilisation d'Open pour ouverture de fichier
    Bonjour,
    Je souhaiterais ouvrir un fichier texte avec Visual Basic 6 sous Microsoft Visual Studio Community 2022 (64 bits) .
    J'ai écris cette petite procédure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub LireFic()
        Dim Fic As Integer = FreeFile()
        Dim chemin As String
        chemin = "C:\Users\Module_Program.txt"
        Open(chemin) For input As #Fic
    End Sub
    Et j'ai l'erreur suivante sur l'instruction Open (ligne 5) :
    BC30451: Name '<name>' is not declared
    J'ai beau regarder dans le forum, tout le monde utilise "open" pour ouvrir un fichier...
    Si quelqu'un a une idée
    Merci

  2. #2
    Membre confirmé Avatar de licardentaistor
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2021
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juillet 2021
    Messages : 316
    Points : 453
    Points
    453
    Par défaut
    pourquoi ne pas utiliser ça:

    https://www.statology.org/vba-open-text-file/

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    MErci pour votre réponse, mais votre code est pour vba et moi j'utilise VB6 sous Visual Studio

    J'ai l'erreur suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim FSO As New FileSystem
    BC30002: Type '<typename>' is not defined

    Merci encore

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    euh, dans Visual Studio, ce n'est pas du VB6, mais du VB.NET, ce n'est plus du tout le même langage que VB6

    Edit: Je peux compléter en mettant un lien vers la doc sur la (une) manière de lire un fichier texte en VB.NET https://learn.microsoft.com/en-us/do...xt-from-a-file

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    Bsr, pourtant à la création de projet ils parlent de visual basic(console ou winForm) mais pas de vb.net

    Citation Envoyé par umfred Voir le message
    euh, dans Visual Studio, ce n'est pas du VB6, mais du VB.NET, ce n'est plus du tout le même langage que VB6

    Edit: Je peux compléter en mettant un lien vers la doc sur la (une) manière de lire un fichier texte en VB.NET https://learn.microsoft.com/en-us/do...xt-from-a-file

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    c'est sous-entendu puisqu'après on te demande de choisir la version du framework (.NET5, ..... ou Framework 4.8 selon ce que tu as choisi initialement) mais tu ne vois pas de VB6 (VB6 est totalement abandonné depuis plusieurs années, mais si tu disposes du Visual Studio 6 (dernier IDE de Microsoft pour le VB6), tu peux continuer à développer en VB6. Le VBA se rapproche de VB6 mais ne s'utilise que dans les applications Microsoft (le A de VBA)

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    Citation Envoyé par umfred Voir le message
    euh, dans Visual Studio, ce n'est pas du VB6, mais du VB.NET, ce n'est plus du tout le même langage que VB6

    Edit: Je peux compléter en mettant un lien vers la doc sur la (une) manière de lire un fichier texte en VB.NET https://learn.microsoft.com/en-us/do...xt-from-a-file
    **********************
    Merci pour ta réponse, mais quand je clique sur ton lien apparait du code C# c'est aussi du VB.net ? Peut on l'adapter dans une procédure écrite dans Visual Studio écrite en Visual Basic ou plûtot vb.net comme tu viens de me l'apprendre ?

    Merci pour l'info...


    Citation Envoyé par umfred Voir le message
    c'est sous-entendu puisqu'après on te demande de choisir la version du framework (.NET5, ..... ou Framework 4.8 selon ce que tu as choisi initialement) mais tu ne vois pas de VB6 (VB6 est totalement abandonné depuis plusieurs années, mais si tu disposes du Visual Studio 6 (dernier IDE de Microsoft pour le VB6), tu peux continuer à développer en VB6. Le VBA se rapproche de VB6 mais ne s'utilise que dans les applications Microsoft (le A de VBA)

  8. #8
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    C# et VB.Net c'est uniquement une question de syntaxe.
    Les deux sont du .Net.

    Il est possible d'ouvrir un projet en VB6 sous Visual Studio avec l'extension Visual Basic Tools for Visual Studio
    Mais cette extension n'est plus maintenue, donc tu ne pourra pas l'installer sur une version 2022.

    L'instruction Open est bien du VB6 (existe aussi en VBA).
    Mais elle s'écrit sans les parenthèses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Fic As Integer = FreeFile
    Open "PathToTheFile" For Input As Fic
    L'instruction Open n'existe pas en VB.Net.
    En VB.Net on utilisa un StreamReader.
    ou bien File.ReadAllText (lit tout le texte et le renvoie dans une chaine)
    ou bien File.ReadAllLines (lit tout le texte et le renvoie dans collection de chaine)
    ou bien File.ReadAllBytes (lit tout le texte et le renvoie un tableau d'octets).
    ou bien File.Readline (lit une ligne du fichier).
    etc.

  9. #9
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    Citation Envoyé par xeron33 Voir le message
    **********************
    Merci pour ta réponse, mais quand je clique sur ton lien apparait du code C# c'est aussi du VB.net ? Peut on l'adapter dans une procédure écrite dans Visual Studio écrite en Visual Basic ou plûtot vb.net comme tu viens de me l'apprendre ?

    Merci pour l'info...
    En haut de la page, tu peux choisir le langage affiché, en cliquant sur C#, liste déroulante, choisir VB et hop (mais bizarre, je clique sur le lien et chez moi c'est bien la version VB qui s'affiche)

  10. #10
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Citation Envoyé par umfred Voir le message
    bizarre, je clique sur le lien et chez moi c'est bien la version VB qui s'affiche
    Rien de bizarre, il y a juste un cookie qui stocke ce que tu as sélectionné.

  11. #11
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    Citation Envoyé par popo Voir le message
    Rien de bizarre, il y a juste un cookie qui stocke ce que tu as sélectionné.
    bête que je suis, je pensais que c'était encodé dans l'url, mais ce n'est que la langue d'affichage qui y est

  12. #12
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    Citation Envoyé par umfred Voir le message
    En haut de la page, tu peux choisir le langage affiché, en cliquant sur C#, liste déroulante, choisir VB et hop (mais bizarre, je clique sur le lien et chez moi c'est bien la version VB qui s'affiche)
    Merci pour ton aide, je viens de tester ta procédure qui fonctionne en mode console dans visual studio, qui ne fonctionne pas en mode winform ça c'est logique, mais curieusement aucun message d'erreur sur le code(rien ne se passe mais pas de message d'erreur) je l'ai affecté à évènement sur click sur un bouton sur un formulaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Console.WriteLine(sr.ReadToEnd())
    Si tu as des remarques...

  13. #13
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Ce n'est pas parce que tu ne le vois pas physiquement que ça ne fait rien...

    Console.WriteLine(sr.ReadToEnd()); écrit dans la console.
    La console n'est pas visible dans ton exécutable WinForm mais elle existe et tu peux écrire dedans !
    Si tu veux provoquer un affichage en WinForm, tu peux utiliser MessageBox.Show(sr.ReadToEnd());.

  14. #14
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    La console est visible dans l'IDE en mode debug, un des onglets en bas (l'onglet "sortie" )

  15. #15
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Certes, mais quand tu livres un logiciel, tu ne demande pas à ton client d'installer VS 2022.

  16. #16
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    Certes, mais il était question ici du code exemple de la page que je lui avais indiqué (qui précise d'ailleurs bien que c'est un code pour une application console)

    Donc le Console.WriteLine n'est utile ici que pour afficher le contenu dans la console, pour montrer qu'on a lu le fichier, donc dans le code final, ça ne sert effectivement à pas grand chose.
    Lors du développement, on utilisera plutôt Debug.WriteLine dont la sortie ne sera visible que lors du débogage dans le même onglet Sortie

  17. #17
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    Bonjour et merci,
    Rien ne s'affiche dans l'onglet sortie j'ai ceci :
    Le thread '.NET TP Worker' (0x81f4) s'est arrêté avec le code 0 (0x0).
    Le thread '.NET TP Worker' (0x97b4) s'est arrêté avec le code 0 (0x0).

    Le thread 0x3844 s'est arrêté avec le code 0 (0x0).
    Ce qui veut dire pas d'erreurs je pense mais rien ne s'affiche dans l'onglet sortie

  18. #18
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    ou que le fichier est vide.

  19. #19
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 760
    Points : 208
    Points
    208
    Par défaut
    Non il n'est pas vide puisque la même procédure en mode console affiche du texte

  20. #20
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 126
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 126
    Points : 1 636
    Points
    1 636
    Par défaut
    Comme l'a suggérer popo, tu as essayé en remplaçant le Console.WriteLine(sr.ReadToEnd()) par un MessageBox.Show(sr.ReadToEnd()) ?
    Pour voir si la fenêtre pop up affiche quelque chose.


    REmarque peut-être bête, mais si tu as associé la lecture au clic d'un bouton, il faut cliquer dessus pour que ça marche.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 4
    Dernier message: 28/11/2013, 17h24
  2. Utilisation du SFTP pour récupérer un fichier
    Par witch dans le forum Linux
    Réponses: 4
    Dernier message: 08/05/2012, 21h42
  3. Problème de droit pour ouverture de fichier
    Par cyrilled dans le forum Outils
    Réponses: 4
    Dernier message: 17/09/2009, 15h44
  4. Réponses: 2
    Dernier message: 16/08/2009, 13h31
  5. Utiliser mon tableau pour copier des fichiers
    Par Paloma dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 31/10/2006, 18h38

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