Función de la biblioteca C -fopen()

C 标准库 - <stdio.h>Biblioteca estándar de C - <stdio.h>

Descripción

Función de la biblioteca CFILE *fopen(const char *filename, const char *mode)Usa el modo dadomodeabrefilenameel archivo señalado.

Declaración

A continuación se muestra la declaración de la función fopen().

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

Parámetros

  • filename-- cadena que indica el nombre del archivo a abrir.
  • mode-- cadena que indica el modo de acceso al archivo, puede ser uno de los valores de la siguiente tabla:
ModoDescripción
"r" Abre un archivo para lectura. El archivo debe existir.
"w" Crea un archivo vacío para escritura. Si el nombre del archivo es igual a uno existente, se elimina el contenido del archivo existente y el archivo se considera un nuevo archivo vacío.
"a" Añade a un archivo. La operación de escritura agrega datos al final del archivo. Si el archivo no existe, se crea.
"r+" Abre un archivo para actualización, se puede leer y escribir. El archivo debe existir.
"w+" Crea un archivo vacío para lectura y escritura.
"a+" Abre un archivo para lectura y añadido.

Valor de retorno

La función devuelve un puntero FILE. De lo contrario devuelve NULL y establece la variable global errno para identificar el error.

Ejemplo

El siguiente ejemplo demuestra el uso de la función fopen().

Ejemplo

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

Compilemos y ejecutemos el programa anterior, esto creará un archivo con el siguiente contenido.file.txt:

We are in 2014

Ahora usemos el siguiente programa para ver el contenido del archivo anterior:

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

C 标准库 - <stdio.h>Biblioteca estándar de C - <stdio.h>

Otras extensiones