Vorgehensweise: Lesen von Text aus einer DateiHow to: Read text from a file

In den folgenden Beispielen wird das synchrone und asynchrone Lesen aus einer Textdatei mithilfe von .NET für Desktop-Apps veranschaulicht.The following examples show how to read text synchronously and asynchronously from a text file using .NET for desktop apps. In beiden Beispielen geben Sie beim Erstellen der Instanz der StreamReader-Klasse einen absoluten oder relativen Pfad zur Datei an.In both examples, when you create the instance of the StreamReader class, you provide the relative or absolute path to the file.

Hinweis

Diese Codebeispiele gelten nicht für die Entwicklung von Apps für die Universelle Windows-Plattform (UWP), da die Windows-Runtime verschiedene Streamtypen für Lese- und Schreibvorgänge für Dateien bereitstellt.These code examples do not apply to developing for Universal Windows (UWP) apps, because the Windows Runtime provides different stream types for reading and writing to files. Ein Beispiel für das Lesen von Text aus einer Datei in einer UWP-App finden Sie unter Schnellstart: Lesen und Schreiben von Dateien.For an example that shows how to read text from a file in a UWP app, see Quickstart: Reading and writing files. Beispiele für die Konvertierung von .NET Framework-Streams in Windows-Runtime-Streams und umgekehrt finden Sie unter Vorgehensweise: Konvertieren zwischen .NET Framework-Streams und Windows-Runtime-Streams.For examples that show how to convert between .NET Framework streams and Windows Runtime streams, see How to: Convert between .NET Framework streams and Windows Runtime streams.

Beispiel: Synchrones Lesen in einer Konsolen-AppExample: Synchronous read in a console app

Im folgenden Beispiel wird ein synchroner Lesevorgang in einer Konsolen-App veranschaulicht.The following example shows a synchronous read operation within a console app. In diesem Beispiel wird die Textdatei mit einem StreamReader geöffnet, ihr Inhalt wird in eine Zeichenfolge kopiert, und die Zeichenfolge wird an die Konsole ausgegeben.This example opens the text file using a stream reader, copies the contents to a string, and outputs the string to the console.

Wichtig

In dem Beispiel wird angenommen, dass eine Datei mit dem Namen TestFile.txt bereits in demselben Ordner vorhanden ist, in dem sich auch die App befindet.The example assumes that a file named TestFile.txt already exists in the same folder as the app.

using System;
using System.IO;

class Test
{
    public static void Main()
    {
        try
        {   // Open the text file using a stream reader.
            using (StreamReader sr = new StreamReader("TestFile.txt"))
            {
            // Read the stream to a string, and write the string to the console.
                String line = sr.ReadToEnd();
                Console.WriteLine(line);
            }
        }
        catch (IOException e)
        {
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
    }
}
Imports System.IO

Class Test
    Public Shared Sub Main()
        Try
            ' Open the file using a stream reader.
            Using sr As New StreamReader("TestFile.txt")
                ' Read the stream to a string and write the string to the console.
                Dim line = sr.ReadToEnd()
                Console.WriteLine(line)
            End Using
        Catch e As IOException
            Console.WriteLine("The file could not be read:")
            Console.WriteLine(e.Message)
        End Try
    End Sub
End Class

Beispiel: Asynchrones Lesen in einer WPF-AppExample: Asynchronous read in a WPF app

Im folgenden Beispiel wird ein asynchroner Lesevorgang in einer WPF-App veranschaulicht.The following example shows an asynchronous read operation in a Windows Presentation Foundation (WPF) app.

Wichtig

In dem Beispiel wird angenommen, dass eine Datei mit dem Namen TestFile.txt bereits in demselben Ordner vorhanden ist, in dem sich auch die App befindet.The example assumes that a file named TestFile.txt already exists in the same folder as the app.

using System;
using System.IO;
using System.Windows;

namespace TextFiles
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                using (StreamReader sr = new StreamReader("TestFile.txt"))
                {
                    string line = await sr.ReadToEndAsync();
                    ResultBlock.Text = line;
                }
            }
            catch (FileNotFoundException ex)
            {
                ResultBlock.Text = ex.Message;
            }
        }
    }
}
Imports System.IO
Imports System.Windows

''' <summary>
''' Interaction logic for MainWindow.xaml
''' </summary>

Partial Public Class MainWindow
    Inherits Window
    Public Sub New()
        InitializeComponent()
    End Sub

    Private Async Sub MainWindow_Loaded(sender As Object, e As RoutedEventArgs)
        Try
            Using sr As StreamReader = New StreamReader("TestFile.txt")
                Dim line = Await sr.ReadToEndAsync()
                ResultBlock.Text = line
            End Using
        Catch ex As FileNotFoundException
            ResultBlock.Text = ex.Message
        End Try
    End Sub
End Class

Siehe auchSee also