ARCHIVOS EN C++ = FLUJOS DE ENTRADA/SALIDA.
Ejemplo: cin y cout
Tipos de ficheros: DE TEXTO y BINARIOS
Biblioteca de gestión de ficheros (a incluir en los programas)
#include <fstream.h>
Apertura de ficheros (1) : Ficheros de entrada o salida.
(A) Como fichero de entrada: Para ello empleamos la sentencia
ifstream descriptor (“nombre.extensión”);
(B) Como fichero de salida: Para ello empleamos la sentencia
ofstream descriptor (“nombre.extensión”);
Comentario: EMPLEAR EL DESCRIPTOR A PARTIR DE AQUÍ.
Apertura de ficheros (2) : Ficheros de entrada o salida.
PRIMERO: declaramos la dirección del flujo de entrada
ifstream descriptor; // Para ficheros de entrada
ofstream descriptor; // Para ficheros de salida
SEGUNDO: Asociamos el descriptor de ficheros al fichero en sí.
descriptor.open(“nombre.extensión”,int modo);
Donde modo puede ser una combinación (empleando |) de lo siguiente:
ios:: in // Modo entrada
ios:: out // Modo salida (por defecto)
ios:: app // Modo añadir, o sea, posicionar el cursor del fichero (ver abajo)
// al final del fichero antes de cada escritura
ios:: binary // El archivo se abre en modo binario
ios:: ate // El archivo se abre y el cursor se posiciona al final
ios:: nocreate // Genera un error si el fichero no existe
ios:: noreplace // Genera un error si el fichero existe ya
Apertura de ficheros (3) : Combinando ambas formas
ifstream descriptor(“nombre.extensión”,int modo); // para entrada
ofstream descriptor(“nombre.extensión”,int modo); // para salida
Ejemplo :
Las dos líneas siguientes abren el fichero “mio.txt” como fichero de entrada (para lectura) y lo asocian al descriptor in.
ifstream in; // descriptor del fichero a abrir
in.open(“mio.txt”); // Apertura del fichero;
Esas dos líneas equivalen a la siguiente:
ifstream in (“mio.txt”); // Apertura del fichero;
Ejemplo :
Para abrir el fichero “salida.dat” en modo modo salida (si el fichero no existe lo crea, y si existe borra su contenido) asociándolo al descriptor out podemos usar la siguiente sentencia;
ofstream out("salida.txt");
o la siguiente
ofstream out("salida.txt", ios::out);
o también
ofstream out;
out.open("salida.txt");
Ficheros de entrada/ salida (1): Declaración-apertura fstream descriptor;
descriptor.open(“nombrefichero.ext”, ios::in | ios::out)
Ficheros de entrada/ salida (1): Declaración-apertura
fstream descriptor(“nombre.extensión”,ios::in | ios:: out); // para entrada-salida
Comprobación de apertura correcta.
if (descriptor){
\\Buen estado. Continuamos
\\ operando sobre el fichero
.....
}
if (! descriptor){
\\ Mal estado. Escribimos un mensaje
\\ a la salida estándar
cout << “Error en la apertura “
.....
}
Ejemplo:
ifstream in("F1.dat");
if (!in)
{
cout << "\n Incapaz de crear este o abrir el fichero "; // salida estándar
cout << " para salida " << endl;
}
else
{
.... // Se opera sobre el fichero
}
Cierre de ficheros.
descriptor.close()
No response to “Archivos”
Publicar un comentario