Intéraction avec les fichiers (lecture ascii & binaire) (n°1 / x)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 259 fois - Téléchargée 29 fois

Contenu du snippet

Ceci est une suite de fonctions pour constituer un module de gestion de fichiers et dossiers, dont voici le premier numéro. La procédure Lire permet de lire un fichier et de le placer dans un TextBox. Deux méthodes de lecture : ASCII et Binaire.

Source / Exemple :


Public Const OPEN_ASCII = 0 ' Ouverture en lecture.
Public Const OPEN_BINARY = 1 ' Ouverture en lecture binaire.

Public Sub Lire(ByVal FilePath As String, Zone As TextBox, Optional Methode As Long = OPEN_ASCII)
    Dim fso As New FileSystemObject
    'Vérifit si le fichier existe
    If fso.FileExists(FilePath) = False Then
        Debug.Print "ERREUR : Fichier non trouvé"
        Exit Sub
    End If
    'Vérifit qu'un TextBox a bien été associé à la variable 'Zone'
    If Zone = Null Then
        Debug.Print "ERREUR : Aucun objet n'a été associé à 'Zone'"
        Exit Sub
    End If
    'Déclaration des variables
    Dim Buffer As String
    Dim BinaryBuffer As String * 60000
    Dim BinaryPosition As Long
    'Suppression du contenu du TextBox 'Zone'
    Zone.Text = ""
    'Lecture du fichier
    Select Case Methode
    Case OPEN_ASCII
        Open FilePath For Input As #1
        While Not EOF(1)
            DoEvents
            Input #1, Buffer
            Zone.Text = Zone.Text & Buffer & vbNewLine
        Wend
        Close #1
        Exit Sub
    Case OPEN_BINARY
        Open FilePath For Binary As #1
        BinaryPosition = 1
        Seek #1, BinaryPosition
        While Not EOF(1)
            DoEvents
            Get #1, BinaryPosition, BinaryBuffer
            Zone.Text = Zone.Text & BinaryBuffer
            BinaryPosition = BinaryPosition + 60000
        Wend
        Close #1
        Exit Sub
    Case Else ' Methode inconnue
        Debug.Print "ERREUR : Methode spécifiée inconnue"
    End Select
    Buffer = ""
    BinaryBuffer = ""
    BinaryPosition = 0
End Sub

Conclusion :


La suite dans pas longtemps :o)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
8
Date d'inscription
mardi 5 décembre 2006
Statut
Membre
Dernière intervention
3 février 2010

moi je ne suis pas d'accord certains qui ne sont pas specialiste peuvent d'apres ces tuto ou exemples trouver des solutions la ou personnes dans le forum ne y les aides.
Messages postés
240
Date d'inscription
vendredi 14 juin 2002
Statut
Membre
Dernière intervention
17 mars 2009

Tout a fait d'accord avec toi, mais ce que tu ne sais peut être pas (et je m'excuse de ne pas l'avoir dit), c'est que je programme ce module pour créer un éditeur de texte.
Messages postés
4525
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
9
Je pense sincerement que la lecture de fichier doit ce faire au cas par cas en adaptant la meilleurs solution pour un probleme donné par exemple pour un fichier de config ou les information serait uniquement des ligne de texte ouvrir un fichier en "Input" "Output" est la meilleurs solution mais pour un fichier media image ou data raw alors "Binary" est l'unique solution !

Je dit ça pour faire comprendre a tout ceux qui veulent encore creer des tutoriaux ou des classes de gestion de fichiers que leurs effort sont inutile les acces fichier sont long et par consequent doivent etre limité, traité au cas par cas et que les fonctions fournis par vb sont suffisante.

@+

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.