Lendo e gravando arquivos
Aprenda a criar, ler e gravar arquivos usando C#
Lendo e gravando arquivos é uma aula grátis de C# Academy no CoddyKit. Esta é a aula 1 de 5. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C# Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C# Academy inclui 5 aulas no total.
Introdução à E/S de arquivos
Lendo e escrevendo arquivos
Bem-vindo à primeira lição da categoria "Trabalhando com arquivos e dados"! Nesta lição, você aprenderá a ler e escrever arquivos em C#, permitindo armazenar e recuperar dados em arquivos de texto. Vamos começar!

Por que trabalhar com arquivos?
Por que trabalhar com arquivos?
Os arquivos permitem que os programas mantenham os dados persistentes, tornando-os disponíveis mesmo depois que a aplicação é fechada. Seja para armazenar dados de usuários, registros ou configurações, o gerenciamento de arquivos é uma habilidade essencial para desenvolvedores.
Ponto principal: O C# fornece classes integradas, como File, StreamReader e StreamWriter, para lidar com operações de arquivos.
Lendo arquivos
Lendo arquivos
Para ler o conteúdo de um arquivo, use o método File.ReadAllText() para arquivos pequenos ou StreamReader para arquivos maiores. Exemplo:
Ponto principal: Sempre verifique se o arquivo existe antes de tentar lê-lo.
using System;
using System.IO;
class Program {
static void Main() {
string filePath = "example.txt";
// Reading a file using File.ReadAllText()
if (File.Exists(filePath)) {
string content = File.ReadAllText(filePath);
Console.WriteLine("File Content:");
Console.WriteLine(content);
} else {
Console.WriteLine("File does not exist.");
}
}
}
Escrevendo arquivos
Escrevendo arquivos
Para escrever dados em um arquivo, use o método File.WriteAllText() para arquivos pequenos ou StreamWriter para ter mais controle. Exemplo:
Dica: Use File.AppendAllText() para adicionar dados a um arquivo existente sem substituí-lo.
using System;
using System.IO;
class Program {
static void Main() {
string filePath = "output.txt";
string content = "Hello, this is a test file.";
// Writing to a file using File.WriteAllText()
File.WriteAllText(filePath, content);
Console.WriteLine("File written successfully.");
}
}
Lendo arquivos linha por linha
Lendo arquivos linha por linha
Para arquivos grandes, é mais eficiente lê-los linha por linha usando StreamReader. Exemplo:
Ponto principal: Use a instrução using para garantir que o arquivo seja fechado corretamente após a leitura.
using System;
using System.IO;
class Program {
static void Main() {
string filePath = "example.txt";
// Reading a file line by line using StreamReader
if (File.Exists(filePath)) {
using (StreamReader reader = new StreamReader(filePath)) {
string line;
while ((line = reader.ReadLine()) != null) {
Console.WriteLine(line);
}
}
} else {
Console.WriteLine("File does not exist.");
}
}
}
Adicionando dados a arquivos
Adicionando dados a arquivos
Para adicionar dados a um arquivo existente, use File.AppendAllText() ou StreamWriter com o sinalizador append definido como true. Exemplo:
Dica: Use Environment.NewLine para garantir quebras de linha adequadas.
using System;
using System.IO;
class Program {
static void Main() {
string filePath = "output.txt";
string newContent = "This line will be appended.";
// Appending data to a file
File.AppendAllText(filePath, newContent + Environment.NewLine);
Console.WriteLine("Data appended successfully.");
}
}
Desafio prático
Desafio prático
Crie um programa que escreva em um arquivo uma lista de nomes informados pelo usuário e depois leia o arquivo para exibir os nomes. Exemplo:
using System;
using System.IO;
class Program {
static void Main() {
string filePath = "names.txt";
// Writing user-entered names to a file
Console.WriteLine("Enter names (type 'exit' to stop):");
using (StreamWriter writer = new StreamWriter(filePath)) {
string name;
while ((name = Console.ReadLine()) != "exit") {
writer.WriteLine(name);
}
}
// Reading the file
Console.WriteLine("\nNames in the file:");
using (StreamReader reader = new StreamReader(filePath)) {
string line;
while ((line = reader.ReadLine()) != null) {
Console.WriteLine(line);
}
}
}
}
Práticas recomendadas para o gerenciamento de arquivos
Práticas recomendadas para o gerenciamento de arquivos
Veja algumas práticas recomendadas:
- Sempre verifique se um arquivo existe antes de lê-lo ou adicionar dados a ele.
- Use a instrução
usingpara fechar automaticamente os fluxos de arquivo. - Trate as exceções para evitar falhas ao lidar com arquivos ausentes ou bloqueados.
Dica: O gerenciamento adequado de arquivos garante que seu programa seja robusto e livre de erros.
Revisão de entrada e saída de arquivos
Muito bem!
Parabéns! Você aprendeu a ler e gravar arquivos em C#. Na próxima lição, exploraremos como trabalhar com os formatos de dados JSON e XML. Continue programando!

Perguntas Frequentes
A aula “Lendo e gravando arquivos” é grátis?
Sim — o texto completo de “Lendo e gravando arquivos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C# Academy, atualize para CoddyKit PRO. O curso de C# Academy inclui 5 aulas no total.
O que vou aprender em “Lendo e gravando arquivos”?
Aprenda a criar, ler e gravar arquivos usando C# Você pratica C# Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C# Academy?
Nenhuma experiência prévia é necessária. C# Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 5.
Quanto tempo leva a aula “Lendo e gravando arquivos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C# Academy?
Sim. Cada aula de C# Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Lendo e gravando arquivos
- Trabalhando com JSON e XML
- Entendendo o tratamento de exceções
- Trabalhando com bancos de dados
- Usando LINQ para consultas de dados