Trabalhando com arquivos em C#

O artigo irá descrever os principais recursos da linguagem C# e do framework .Net para trabalhar com arquivos tanto com leitura como gravação destes. Você terá o primeiro contato com as classes disponibilizadas para escrever, ler e apagar arquivos. Também terá contato com as classes que permitem obter dados estatísticos do arquivo como tamanho, data da última modificação e se o arquivo existe.

Do que trata o artigo: O artigo irá descrever os principais recursos da linguagem C# e do framework .Net para trabalhar com arquivos tanto com leitura como gravação destes. Você terá o primeiro contato com as classes disponibilizadas para escrever, ler e apagar arquivos. Também terá contato com as classes que permitem obter dados estatísticos do arquivo como tamanho, data da última modificação e se o arquivo existe. Além dos conceitos envolvidos, será feita uma aplicação de demonstração para que você possa ver os recursos em uso.

Para que serve: Sempre é necessário ler dados de arquivos quer sejam de texto, arquivos XML ou qualquer outro formato. Existem muitos recursos dentro do framework .Net, mas nem sempre é muito fácil lembrar-se de como usá-los.

Em que situação o tema é útil: Mesmo com todas as funcionalidades oferecidas pelo sistema operacional, ao desenvolver aplicativos comerciais sempre se acaba precisando escrever dados em arquivos geralmente do tipo texto ou outro formato qualquer para troca de dados entre aplicações. Caso você esteja trabalhando com dados no formato texto e precise de referências rápidas para executar suas tarefas, este artigo oferece o que é necessário para executá-las. Além disto, existem alguns cuidados que você precisará tomar para poder escrever e ler em arquivos e que são expostos neste artigo.

Resumo do DevMan: Todas as informações armazenadas no computador estão dentro de arquivos. Estudando os fundamentos da computação um pouco mais a fundo, você perceberá que até mesmo as pastas (ou diretórios para os mais antigos) consistem de arquivos especiais onde outros arquivos são armazenados. As tarefas mais comuns do programador incluem manipular arquivos verificando se existem ou não dentro do sistema de arquivos da máquina onde o programa está sendo executado. Também é necessário criar os arquivos, atualizar seus dados sobrescrevendo os dados existentes, renomear ou ainda excluir um arquivo que não é mais necessário. Dentro da proposta de não precisar começar de um ponto muito elementar, você tomará conhecimento do que é preciso fazer usando a linguagem C# para executar estas tarefas. Além do contato com os códigos e classes que serão usados, também levaremos em conta alguns pontos com relação à segurança. Outro ponto a ser abordado são os elementos usados pela interface do Windows para facilitar o trabalho com os arquivos. E como sempre, é bom ter um exemplo prático onde tudo o que se aprendeu possa ser aplicado.

Uma das maiores vantagens dos computadores modernos é a possibilidade de se poderem armazenar os dados do trabalho que está sendo feito para se usar mais tarde.

Pense por um momento em quais atividades que você executa diariamente usando os PC´s que fazem uso dos arquivos? Vão aqui algumas da minha lista:

  1. Eu faço login em um computador que armazena em arquivo o meu ID e minha senha;
  2. Após o login, o sistema lê as minhas preferências de uso do computador como o papel de parede e ícones da minha área de trabalho, mais uma vez, armazenado em arquivos;
  3. Quando abro o programa para ler os e-mails, primeiramente preciso fazer o download das mensagens que estão armazenadas em um servidor de internet remoto e gravá-los em minha máquina. Mesmo que eu use um Webmail (como o Gmail ou o Hotmail), as mensagens estão armazenadas em arquivos de um servidor;
  4. Como eu trabalho como programador, o código fonte fica gravado no disco do meu computador em arquivos texto especiais que são abertos pelo Visual Studio;
  5. Se eu preferir jogar, os dados usados para os jogos estão em arquivos;
  6. Músicas também são gravadas geralmente em arquivos MP3.

São tantas as operações feitas usando-se arquivos que se for citar todas elas, o artigo fica sem graça. Mas, esteja certo: uma hora destas você vai precisar fazer o uso da manipulação de arquivos. No início, quando não havia ainda o Windows e os sistemas operacionais eram muito básicos, os programadores precisavam preocupar-se em resolver muitos problemas ao manipular os arquivos. Vejamos alguns destes problemas:

Ou seja, era um trabalho bastante árduo.

Com a chegada dos sistemas operacionais mais modernos, estes passaram a oferecer um conjunto de objetos para executar estas tarefas. Geralmente chamados de API (Application Programming Interfaces), estas bibliotecas cobriam boa parte das tarefas, embora, com alguma complexidade.

A partir do surgimento dos ambientes gerenciados como o framework .Net as tarefas ficaram muito mais simplificadas pois, quase tudo o que se desejar fazer com os arquivos nos programas possuirá uma classe que irá resolver o problema para o programador. Não é possível cobrir todas as classes em um artigo como este, mas, partindo das tarefas mais básicas, vamos descobrindo como fazer as tarefas mais elementares.

Para que você consiga entender bem o artigo e poder executar os exemplos eu espero que você tenha algum conhecimento dos seguintes assuntos:

Nota: Apesar do artigo demonstrar as operações de maneira mais elementar deixando de apresentar alguns pontos importantes como criptografia, tabela de caracteres a ser usada (encoding pages) e gerenciamento de permissões, todas estas questões são extensamente cobertas pelo framework .Net e a linguagem C#. Para evitar estender demais o artigo, vamos tratar apenas das questões iniciais. Procure se informar mais sobre o assunto posteriormente.

Classes para ler e gravar arquivos

Basicamente todas as classes usadas para o trabalho com arquivos estão dentro da biblioteca System.IO. Assim, para poder usar estas em seu projeto ou sua classe você precisa adicionar a biblioteca da seguinte forma:

using System.IO; "
[...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados