Guide pratique pour lire des fichiers texte dans Visual Basic

La méthode ReadAllText de l'objet My.Computer.FileSystem vous permet de lire un fichier texte. L'encodage du fichier peut être spécifié si le contenu de ce dernier utilise l'encodage ASCII ou UTF-8.

Si vous lisez un fichier avec des caractères étendus, vous devez spécifier son encodage.

Notes

Pour lire un fichier, une ligne de texte à la fois, utilisez la méthode OpenTextFileReader de l'objet My.Computer.FileSystem. La méthode OpenTextFileReader retourne un objet StreamReader. Vous pouvez utiliser la méthode ReadLine de l"objet StreamReader pour lire un fichier une ligne à la fois. Vous pouvez tester la fin du fichier à l'aide de la méthode EndOfStream de l'objet StreamReader.

Pour lire un fichier texte

Utilisez la méthode ReadAllText de l'objet My.Computer.FileSystem pour lire le contenu d'un fichier texte dans une chaîne en fournissant le chemin d'accès. L'exemple suivant lit le contenu du fichier test.txt dans une chaîne puis l'affiche dans un message.

Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt")
MsgBox(fileReader)

Pour lire un fichier texte encodé

Utilisez la méthode ReadAllText de l'objet My.Computer.FileSystem pour lire le contenu d'un fichier texte dans une chaîne en fournissant le chemin d'accès et le type d'encodage du fichier. L'exemple suivant lit le contenu du fichier UTF32 test.txt dans une chaîne puis l'affiche dans un message.

Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt",
   System.Text.Encoding.UTF32)
MsgBox(fileReader)

Programmation fiable

Les conditions ci-dessous peuvent générer une exception.

  • Le chemin d'accès n'est pas valide pour une des raisons suivantes : il s'agit d'une chaîne de longueur nulle ; il ne contient que des espaces blancs ; il contient des caractères non valides ou il s'agit d'un chemin d'accès de périphérique (ArgumentException).

  • Le chemin n'est pas valide, car il a la valeur Nothing (ArgumentNullException).

  • Le fichier n'existe pas (FileNotFoundException).

  • Le fichier est utilisé par un autre processus, ou une erreur E/S se produit (IOException).

  • Le chemin d'accès dépasse la longueur maximale définie par le système (PathTooLongException).

  • Un nom de fichier ou de répertoire du chemin contient un signe deux-points (:) ou n'a pas un format correct (NotSupportedException).

  • Il n'y a pas assez de mémoire pour écrire la chaîne dans la mémoire tampon (OutOfMemoryException).

  • L'utilisateur n'a pas les autorisations nécessaires pour afficher le chemin (SecurityException).

Ne vous basez pas sur le nom d'un fichier pour en déterminer le contenu. Par exemple, le fichier Form1.vb peut ne pas être un fichier source Visual Basic.

Vérifiez toutes les entrées avant d'utiliser les données dans votre application. Le fichier n'a peut-être pas le contenu attendu, et les méthodes utilisées pour lire le fichier peuvent échouer.

Voir aussi