Como ler texto de um arquivo
Os exemplos a seguir mostram como ler de forma síncrona e assíncrona o texto de um arquivo de texto usando o .NET para aplicativos de área de trabalho. Nos dois exemplos, ao criar uma instância da classe StreamReader, você fornece o caminho relativo ou absoluto para o arquivo.
Observação
Esses exemplos de código não se aplicam a aplicativos Universal Windows (UWP) porque o Windows Runtime fornece diferentes tipos de fluxos para leitura e gravação em arquivos. Para obter um exemplo que mostra como ler o texto de um arquivo em um aplicativo UWP, confira Início rápido: ler e gravar arquivos. Para obter exemplos que mostram como converter entre fluxos do .NET Framework e fluxos do Windows Runtime, veja Como converter entre fluxos do .NET Framework e do Windows Runtime.
Exemplo: leitura síncrona em um aplicativo de console
O exemplo a seguir mostra uma operação de leitura síncrona em um aplicativo de console. Esse exemplo abre o arquivo de texto usando um leitor de fluxo, copia o conteúdo para uma cadeia de caracteres e gera a cadeia de caracteres no console.
Importante
O exemplo pressupõe que um arquivo chamado TestFile.txt já exista na mesma pasta do aplicativo.
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
Exemplo: leitura assíncrona em um aplicativo WPF
O exemplo a seguir mostra uma operação de leitura assíncrona em um aplicativo WPF (Windows Presentation Foundation).
Importante
O exemplo pressupõe que um arquivo chamado TestFile.txt já exista na mesma pasta do aplicativo.
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
Confira também
- StreamReader
- File.OpenText
- StreamReader.ReadLine
- E/S de arquivo assíncrona
- Como criar uma listagem de diretório
- Início rápido: ler e gravar arquivos
- Como converter entre fluxos do .NET Framework e do Windows Runtime
- Como ler e gravar em um arquivo de dados recém-criado
- Como abrir um arquivo de log e acrescentar dados a ele
- Como gravar texto em um arquivo
- Como: ler caracteres de uma cadeia de caracteres
- Como: escrever caracteres em uma cadeia de caracteres
- E/S de arquivo e de fluxo
Comentários
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Enviar e exibir comentários de