Pular para o conteúdo

Introdução à linguagem C - Parte IV

Nesta continuação da maravilhosa série sobre a linguagem C, apresentaremos o uso de arquivos textos e binários. Como declará-los? Como abrí-los? Como usá-los? São algumas das perguntas que teremos respondidas aqui!
Ricardo Rodrigues Lucca jllucca
Hits: 79.038 Categoria: C/C++ Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar

Parte 2: Abrindo/Fechando arquivos

Quando tratamos de arquivos precisamos saber que antes de tudo precisamos abri-lo e depois de tudo precisamos fecha-lo. Para isso, existem essas duas funções que irei explicar.

FILE *fopen(char *arquivo, char *modo);


A função fopen da biblioteca stdio.h retorna uma estrutura com alguns dados sobre o arquivo, mas vamos ignorar isso. O primeiro parâmetro que fopen recebe é o nome do arquivo e o segundo é o modo, ou seja, como ele deve ser aberto.

Os modos possíveis de se usar aqui são:
  • r: abre o arquivo texto para leitura e o cursor é posto no inicio do arquivo.
  • r+: abre o arquivo para leitura e escrita. O cursor é posicionado no início do arquivo e o conteúdo anterior é apagado.
  • w: limpa o conteúdo do arquivo ou cria um arquivo texto para escrever. O cursor é posicionado no início do arquivo.
  • w+: abre o arquivo como leitura e escrita. Se o arquivo já existe ele o sobrescreve, senão ele o criará. O cursor é posicionado no início do arquivo e o conteúdo anterior é descartado.
  • a: abre o arquivo para anexação (não perder o conteúdo já inserido). O arquivo é criado se ele não existir. O cursor é posicionado no final do arquivo.
  • a+: abre o arquivo para anexação e leitura. O arquivo se não existir é criado. O cursor é posicionado no final do arquivo.
Todos os modos listados são para arquivos textos, podemos definir que o sistema deve tentará acessar um arquivo binário adicionando "b" aos modos do texto. Exemplo: "w+b", "r+b", "a+b".

Outro ponto importante, o "cursor" mencionado não é o do console. Ele é uma espécie de apontador para onde estamos no arquivo. Do mesmo modo, se o cursor estiver no final do arquivo e tentarmos ler algo teremos como retorno EOF.

int fclose(FILE *fd);


A função acima é a responsável por fechar um arquivo. A responsabilidade de fechar um arquivo, basicamente, é que ao se fechar o arquivo tudo que estiver no buffer antes será transferido para o arquivo e este será fechado.

Exemplo do que foi tratado até agora seria isso:

#include <stdio.h>

void main(void) {
          FILE *fd;
          fd=fopen("ABC","a");
          fclose(fd);
}

Os comandos mais básicos para se ler/escrever em arquivos são os comandos getc e putc. O getc é usado para se ler os caracteres do arquivo enquanto que putc serve para escrevermos em arquivos, mas infelizmente não tratarei desses arquivos. Vamos falar de algo um pouco mais evoluído...

   1. Começando
   2. Abrindo/Fechando arquivos
   3. E/S de arquivos
   4. Exemplo
   5. Funções adicionais
   6. Dados de arquivos
   7. Exemplo 2

Funcionamento da memória

Uma pequena análise do Gentoo Linux

Ponteiros void na linguagem C

Utilizando a função QSort em C

Introdução as Bibliotecas do C/C++

Inteiros e Strings na linguagem C

Criando uma aplicação gráfica com o Qt Designer

Introdução as Bibliotecas do C/C++

Introdução à linguagem C - Parte III

Liberando Memória ajustando o Tamanho das Strings em C

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.