Comment : lire du texte dans un fichier

L'exemple de code suivant montre comment lire du texte dans un fichier texte. Le deuxième exemple vous avertit lorsque la fin du fichier est atteinte. Les méthodes ReadAllLines ou ReadAllText offrent également cette fonctionnalité.

Exemple

Imports System
Imports System.IO

Class Test
    Public Shared Sub Main()
        Try
            ' Create an instance of StreamReader to read from a file.
            ' The using statement also closes the StreamReader.
            Using sr As New StreamReader("TestFile.txt")
                Dim line As String
                ' Read and display lines from the file until the end of
                ' the file is reached.
                Do
                    line = sr.ReadLine()
                    If Not (line Is Nothing) Then
                        Console.WriteLine(line)
                    End If
                Loop Until line Is Nothing
            End Using
        Catch e As Exception
            ' Let the user know what went wrong.
            Console.WriteLine("The file could not be read:")
            Console.WriteLine(e.Message)
        End Try
    End Sub
End Class
using System;
using System.IO;

class Test
{
    public static void Main()
    {
        try
        {
            // Create an instance of StreamReader to read from a file.
            // The using statement also closes the StreamReader.
            using (StreamReader sr = new StreamReader("TestFile.txt"))
            {
                String line;
                // Read and display lines from the file until the end of
                // the file is reached.
                while ((line = sr.ReadLine()) != null)
                {
                    Console.WriteLine(line);
                }
            }
        }
        catch (Exception e)
        {
            // Let the user know what went wrong.
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
    }
}
using namespace System;
using namespace System::IO;

ref class Test
{
public:
    static void Main()
    {
        try
        {
            // Create an instance of StreamReader to read from a file.
            // The using statement also closes the StreamReader.
            StreamReader^ sr = gcnew StreamReader("TestFile.txt");
            String^ line;
            // Read and display lines from the file until the end of
            // the file is reached.
            while ((line = sr->ReadLine()) != nullptr)
            {
                Console::WriteLine(line);
            }
            sr->Close();
        }
        catch (Exception^ e)
        {
            // Let the user know what went wrong.
            Console::WriteLine("The file could not be read:");
            Console::WriteLine(e->Message);
        }
    }
};

int main()
{
    Test::Main();
}
Imports System
Imports System.IO

Public Class TextFromFile
    Private Const FILE_NAME As String = "MyFile.txt"

    Public Shared Sub Main()
        If Not File.Exists(FILE_NAME) Then
            Console.WriteLine("{0} does not exist.", FILE_NAME)
            Return
        End If
        Using sr As StreamReader = File.OpenText(FILE_NAME)
            Dim input As String
            Do
                input = sr.ReadLine()
                If Not (input Is Nothing) Then
                    Console.WriteLine(input)
                End If
            Loop Until input Is Nothing
            Console.WriteLine ("The end of the stream has been reached.")
        End Using
    End Sub
End Class
using System;
using System.IO;

public class TextFromFile
{
    private const string FILE_NAME = "MyFile.txt";

    public static void Main()
    {
        if (!File.Exists(FILE_NAME))
        {
            Console.WriteLine("{0} does not exist.", FILE_NAME);
            return;
        }
        using (StreamReader sr = File.OpenText(FILE_NAME))
        {
            String input;
            while ((input = sr.ReadLine()) != null)
            {
                Console.WriteLine(input);
            }
            Console.WriteLine ("The end of the stream has been reached.");
        }
    }
}
using namespace System;
using namespace System::IO;

public ref class TextFromFile
{
private:
    static String^ FILE_NAME = "MyFile.txt";

public:
    static void Main()
    {
        if (!File::Exists(FILE_NAME))
        {
            Console::WriteLine("{0} does not exist.", FILE_NAME);
            return;
        }
        StreamReader^ sr = File::OpenText(FILE_NAME);
        String^ input;
        while ((input = sr->ReadLine()) != nullptr)
        {
            Console::WriteLine(input);
        }
        Console::WriteLine ("The end of the stream has been reached.");
        sr->Close();
    }
};

int main()
{
    TextFromFile::Main();
}

Programmation fiable

Ce code crée une méthode StreamReader qui pointe vers MyFile.txt par le biais d'un appel à File.OpenText. StreamReader.ReadLine retourne chaque ligne sous la forme d'une chaîne. Quand il ne reste aucun caractère à lire, un message s'affiche à cet effet et le flux est fermé.

RemarqueRemarque

Les utilisateurs de Visual Basic peuvent choisir d'utiliser les méthodes et les propriétés fournies par la classe FileSystem pour les E/S de fichiers.

Voir aussi

Tâches

Comment : créer une liste des répertoires

Comment : lire et écrire dans un fichier de données créé récemment

Comment : ouvrir un fichier journal et y ajouter des éléments

Comment : écrire du texte dans un fichier

Comment : lire les caractères d'une chaîne

Comment : écrire des caractères dans une chaîne

Référence

StreamReader

File.OpenText

StreamReader.ReadLine

Concepts

E/S de fichier de base