Nasıl yapılır: Dosyadan metin okuma

Aşağıdaki örnek, masaüstü uygulamaları için .NET kullanılarak bir metin dosyasındaki metnin nasıl zaman uyumlu ve zaman uyumsuz olarak okunacağını gösterir. Her iki örnekte de sınıfın StreamReader örneğini oluşturduğunuzda dosyanın göreli veya mutlak yolunu sağlarsınız.

Not

Windows çalışma zamanı dosyaları okumak ve dosyalara yazmak için farklı akış türleri sağladığından bu kod örnekleri Evrensel Windows (UWP) uygulamaları için geçerli değildir. UWP uygulamasındaki bir dosyadan metin okumayı gösteren bir örnek için bkz . Hızlı Başlangıç: Dosyaları okuma ve yazma. .NET Framework akışları ile Windows Çalışma Zamanı akışları arasında dönüştürmeyi gösteren örnekler için bkz. Nasıl yapılır: .NET Framework akışları ile Windows Çalışma Zamanı akışları arasında dönüştürme.

Örnek: Konsol uygulamasında zaman uyumlu okuma

Aşağıdaki örnekte, konsol uygulamasında zaman uyumlu okuma işlemi gösterilmektedir. Bu örnek, akış okuyucu kullanarak metin dosyasını açar, içeriği bir dizeye kopyalar ve dizeyi konsola verir.

Önemli

Örnekte, TestFile.txt adlı bir dosyanın uygulamayla aynı klasörde zaten var olduğu varsayılır.

using System;
using System.IO;

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

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

Örnek: WPF uygulamasında zaman uyumsuz okuma

Aşağıdaki örnekte, Bir Windows Presentation Foundation (WPF) uygulamasında zaman uyumsuz okuma işlemi gösterilmektedir.

Önemli

Örnekte, TestFile.txt adlı bir dosyanın uygulamayla aynı klasörde zaten var olduğu varsayılır.

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 (var sr = new StreamReader("TestFile.txt"))
            {
                ResultBlock.Text = await sr.ReadToEndAsync();
            }
        }
        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 New StreamReader("TestFile.txt")
                ResultBlock.Text = Await sr.ReadToEndAsync()
            End Using
        Catch ex As FileNotFoundException
            ResultBlock.Text = ex.Message
        End Try
    End Sub
End Class

Ayrıca bkz.