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.047 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

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

Ponteiros void na linguagem C

Criando um servidor de Ultima Online

Linux Básico - Parte I

Linux Básico - Parte II

Vírus de computador e criação de um vírus em C/C++ (parte 1 - básico)

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

Inteiros e Strings na linguagem C

Linguagem C - O primeiro programa

Criando uma calculadora com o Glade

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.