English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do C

Controle de fluxo do C

Função C

Array C

Ponteiro C

String C

Estrutura do C

Arquivos do C

Outros C

Manual de referência do C

Uso e exemplo da função fopen() da biblioteca C

Biblioteca Padrão - <stdio.h>

Função da biblioteca C FILE *fopen(const char *filename, const char *mode) Usar o modo fornecido mode Abrir filename O arquivo apontado.

Declaração

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

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

Parâmetros

  • filename -- Esta é uma string C que contém o nome do arquivo a ser aberto.
  • mode -- Esta é uma string C que contém o modo de acesso ao arquivo, o modo é o seguinte:
ModoDescrição
"r" Abrir um arquivo para leitura. O arquivo deve existir.
"w" Criar um arquivo vazio para escrita. Se o nome do arquivo for o mesmo que um arquivo existente, o conteúdo existente será apagado e o arquivo será tratado como um novo arquivo vazio.
"a" Adicionar a um arquivo. As operações de escrita adicionam dados ao final do arquivo. Se o arquivo não existir, ele será criado.
"r+" Abrir um arquivo para atualização, que pode ser lido e escrito. O arquivo deve existir.
"w+" Criar um arquivo vazio para leitura.
"a+" Abrir um arquivo para leitura e escrita.

Retorno

A função retorna um ponteiro FILE. Caso contrário, retorna NULL e configura a variável global errno para identificar o erro.

Exemplo online

O exemplo a seguir demonstra 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", 2014);
   fclose(fp);
   return(0);
}

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

We are in 2014

Agora vamos usar o seguinte programa para visualizar o conteúdo do arquivo acima:

#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);
}

Biblioteca Padrão - <stdio.h>