Função de biblioteca C - fopen ()

Descrição

A função da biblioteca C FILE *fopen(const char *filename, const char *mode) abre o filename apontado, por nome de arquivo usando o dado mode.

Declaração

A seguir está a declaração para a função fopen ().

FILE *fopen(const char *filename, const char *mode)

Parâmetros

  • filename - Esta é a string C contendo o nome do arquivo a ser aberto.

  • mode- Esta é a string C que contém um modo de acesso ao arquivo. Inclui -

Sr. Não. Modo e descrição
1

"r"

Abre um arquivo para leitura. O arquivo deve existir.

2

"w"

Cria um arquivo vazio para gravação. Se já existir um arquivo com o mesmo nome, seu conteúdo será apagado e o arquivo será considerado como um novo arquivo vazio.

3

"a"

Anexa a um arquivo. Operações de gravação, anexe dados no final do arquivo. O arquivo é criado se não existir.

4

"r+"

Abre um arquivo para atualizar leitura e gravação. O arquivo deve existir.

5

"w+"

Cria um arquivo vazio para leitura e gravação.

6

"a+"

Abre um arquivo para leitura e anexação.

Valor de retorno

Esta função retorna um ponteiro FILE. Caso contrário, NULL é retornado e a variável global errno é definida para indicar o erro.

Exemplo

O exemplo a seguir mostra o uso da função fopen ().

#include <stdio.h>
#include <stdlib.h>

int main () {
   FILE * fp;

   fp = fopen ("file.txt", "w+");
   fprintf(fp, "%s %s %s %d", "We", "are", "in", 2012);
   
   fclose(fp);
   
   return(0);
}

Vamos compilar e executar o programa acima que irá criar um arquivo file.txt com o seguinte conteúdo -

We are in 2012

Agora vamos ver o conteúdo do arquivo acima usando o seguinte programa -

#include <stdio.h>

int main () {
   FILE *fp;
   int c;
  
   fp = fopen("file.txt","r");
   while(1) {
      c = fgetc(fp);
      if( feof(fp) ) { 
         break ;
      }
      printf("%c", c);
   }
   fclose(fp);
   
   return(0);
}

Vamos compilar e executar o programa acima para produzir o seguinte resultado -

We are in 2012