Szöveg beolvasása fájlból

Az alábbi példák azt mutatják be, hogyan olvashat szövegeket szinkron módon és aszinkron módon egy szövegfájlból az asztali alkalmazásokhoz készült .NET használatával. Mindkét példában az osztálypéldány StreamReader létrehozásakor meg kell adnia a fájl relatív vagy abszolút elérési útját.

Feljegyzés

Ezek a kódpéldák nem vonatkoznak az univerzális Windows-alkalmazásokra, mert a Windows-futtatókörnyezet különböző streamtípusokat biztosít a fájlok olvasásához és írásához. További információ: UWP- fájlok használata. Példák az .NET-keretrendszer streamek és Windows-futtatókörnyezet streamek közötti konvertálásra: Útmutató: Konvertálás .NET-keretrendszer streamek és Windows-futtatókörnyezet streamek között.

Előfeltételek

  • Hozzon létre egy TestFile.txt nevű szövegfájlt az alkalmazással megegyező mappában.

    Adjon hozzá néhány tartalmat a szövegfájlhoz. A cikkben szereplő példák a szövegfájl tartalmát a konzolra írják.

Fájl beolvasása

Az alábbi példa egy szinkron olvasási műveletet mutat be egy konzolalkalmazáson belül. A fájl tartalmát a rendszer egy sztringváltozóban olvassa és tárolja, amelyet aztán a konzolra ír.

  1. Hozzon létre egy példányt StreamReader .
  2. Hívja meg a metódust StreamReader.ReadToEnd() , és rendelje hozzá az eredményt egy sztringhez.
  3. Írja be a kimenetet a konzolra.
try
{
    // Open the text file using a stream reader.
    using StreamReader reader = new("TestFile.txt");

    // Read the stream as a string.
    string text = reader.ReadToEnd();

    // Write the text to the console.
    Console.WriteLine(text);
}
catch (IOException e)
{
    Console.WriteLine("The file could not be read:");
    Console.WriteLine(e.Message);
}
Try
    ' Open the text file using a stream reader.
    Using reader As New StreamReader("TestFile.txt")

        ' Read the stream as a string.
        Dim text As String = reader.ReadToEnd()

        ' Write the text to the console.
        Console.WriteLine(text)

    End Using
Catch ex As IOException
    Console.WriteLine("The file could not be read:")
    Console.WriteLine(ex.Message)
End Try

Fájl aszinkron olvasása

Az alábbi példa egy aszinkron olvasási műveletet mutat be egy konzolalkalmazáson belül. A fájl tartalmát a rendszer egy sztringváltozóban olvassa és tárolja, amelyet aztán a konzolra ír.

  1. Hozzon létre egy példányt StreamReader .
  2. Várja meg a metódust StreamReader.ReadToEndAsync() , és rendelje hozzá az eredményt egy sztringhez.
  3. Írja be a kimenetet a konzolra.
try
{
    // Open the text file using a stream reader.
    using StreamReader reader = new("TestFile.txt");

    // Read the stream as a string.
    string text = await reader.ReadToEndAsync();

    // Write the text to the console.
    Console.WriteLine(text);
}
catch (IOException e)
{
    Console.WriteLine("The file could not be read:");
    Console.WriteLine(e.Message);
}
Try
    ' Open the text file using a stream reader.
    Using reader As New StreamReader("TestFile.txt")

        ' Read the stream as a string.
        Dim text As String = Await reader.ReadToEndAsync()

        ' Write the text to the console.
        Console.WriteLine(text)

    End Using
Catch ex As IOException
    Console.WriteLine("The file could not be read:")
    Console.WriteLine(ex.Message)
End Try