Sdílet prostřednictvím


Čtení textu ze souboru

Následující příklady znázorňují způsob synchronního a asynchronního čtení textu z textového souboru pomocí rozhraní .NET pro aplikace klasické pracovní plochy. V obou příkladech při vytváření instance StreamReader třídy zadáte relativní nebo absolutní cestu k souboru.

Poznámka:

Tyto příklady kódu se nevztahují na univerzální aplikace pro Windows (UPW), protože modul runtime Windows poskytuje různé typy datových proudů pro čtení a zápis do souborů. Další informace naleznete v tématu PRÁCE S UPW se soubory. Příklady, které ukazují, jak převést mezi datovými proudy rozhraní .NET Framework a datovými proudy prostředí Windows Runtime, najdete v tématu Postupy: Převod mezi datovými proudy rozhraní .NET Framework a datovými proudy prostředí Windows Runtime.

Požadavky

  • Vytvořte textový soubor s názvem TestFile.txt ve stejné složce jako aplikace.

    Přidejte do textového souboru nějaký obsah. Příklady v tomto článku zapisuje obsah textového souboru do konzoly.

Čtení souboru

Následující příklad ukazuje synchronní operaci čtení v rámci konzolové aplikace. Obsah souboru se načte a uloží v řetězcové proměnné, která se pak zapíše do konzoly.

  1. Vytvořte StreamReader instanci.
  2. Zavolejte metodu StreamReader.ReadToEnd() a přiřaďte výsledek k řetězci.
  3. Napište výstup do konzoly.
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

Asynchronní čtení souboru

Následující příklad ukazuje asynchronní operaci čtení v rámci konzolové aplikace. Obsah souboru se načte a uloží v řetězcové proměnné, která se pak zapíše do konzoly.

  1. Vytvořte StreamReader instanci.
  2. Vyčkejte na metodu StreamReader.ReadToEndAsync() a přiřaďte výsledek řetězci.
  3. Napište výstup do konzoly.
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