Lire le contenu d'un fichier en une seule fois

FNIAMKE Messages postés 83 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 27 juin 2016 - 21 juil. 2010 à 13:02
FNIAMKE Messages postés 83 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 27 juin 2016 - 22 juil. 2010 à 11:58
Bonjour Mme/Mr.

J'ai dans un fichier texte un script de création d'une base de données.

Je souhaiterais lire dans une variable le contenu du fichier en une seule fois et non le parcourir.

Merci de m'apporter assistance.

NIAMKE Francis

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
21 juil. 2010 à 13:15
Salut
Pour ça, il te suffit de considérer ton fichier comme un fichier binaire.
Pour lire d'un seul coup son contenu, il te suffit de dimensionner une variable dont la taille sera exactement celle du contenu du fichier.
    Dim ff      As Integer
    Dim sBuffer As String
    
    ff = FreeFile
    Open "C:\Mon fichier.txt" For Binary Access Read As #ff
        sBuffer = String(LOF(ff), " ")
        Get #ff, , sBuffer
    Close #ff

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
FNIAMKE Messages postés 83 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 27 juin 2016
21 juil. 2010 à 14:38
J'ai essayé ta méthode.
Mais j'ai un problème

dans ma variable j'ai ces caractères en début ÿþ
alors qu'il ne sont pas dans mon fichier.

il faut dire que j'ai obtenu mon fichier générant le script à partir de SQL manager.

Merci de m'apporter assistance.

NIAMKE Francis
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
21 juil. 2010 à 21:03
Peut-être une histoire de caractères UniCode.
Regarde les fonctions de conversion, genre StrConv (à appliquer sur la chaine récupérée)
0
FNIAMKE Messages postés 83 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 27 juin 2016
22 juil. 2010 à 11:58
Ok ça marche.

Merci pour ton assistance.

une autre question.

Sous dot net grâce à SqlDataSourceEnumerator j'arrive à récupérer les instances de sql server

est ce que tu connais son équivalent sous VB ou access?

Merci pour ton soutien.

NIAMKE Francis
0
Rejoignez-nous