UC3M

Grado en Ing. Telemática/Sist. Audiovisuales/Sist. de Comunicaciones

Arquitectura de Sistemas

Septiembre 2017 - Enero 2018

9.2.4. Abriendo un fichero con un descriptor

Para poder abrir un fichero dado su descriptor de fichero ( file descriptor (fd) en inglés) se ha de usar la función fdopen. Esta función se comporta como la función fopen, pero en vez de abrir un fichero dado su nombre, usa el identificador de fichero para abrirlo:

#include <stdio.h>
int fdopen(int fildes, const char *mode);

Una forma de conseguir un descriptor para un fichero es con la función mkstemp:

#include <stdio.h>
int mkstemp(char *template);

Esta función genera un nombre de fichero temporal único a partir del string template. Los últimos seis caracteres de template deben ser “XXXXXX”, que son reemplazados luego por mkstemp con una cadena que hace que el nombre no esté repetido. Ya que será modificada, template no debe ser definida como constante. La función mkstemp devuelve el descriptor de fichero del fichero temporal creado o -1 en caso de error.