Ir a Emagister Encuentra tu formación ideal
¡Mailxmail y emagister se unen para que tengas toda la formación a tu alcance!
12.170 cursos gratis
8.186.444 alumnos
Facebook Twitter YouTube
Busca cursos gratis:

Lenguaje C++. Guía para Programadores

Autor: Fernando Guerrero Tala
Curso:
8,76/10 (191 opiniones) |37692 alumnos|Fecha publicación: 01/07/2004
Envía un mensaje al autor

Capítulo 16:

 Ficheros

Para realizar E/S en archivos debe incluirse en el programa el archivo cabecera fstream.h. Un archivo se abre mediante el enlace a un flujo. Tenemos 3 tipos de flujo: de entrada, de salida o de entrada-salida. Antes de abrir un fichero debe obtenerse el flujo. Los 3 flujos tienen funciones constructoras que abren el archivo automáticamente. Una vez realizadas las operaciones con los ficheros debemos cerrar el fichero mediante la función close( ).

FLUJO

DESCRIPCIÓN

ofstream out

De salida.

ofstream in

De entrada.

fstream io

De salida-entrada.

En C++ podemos trabajar con 3 tipos de ficheros: secuencial, binario sin formato y acceso aleatorio. Todos comparten el método de apertura, pero cada uno de ellos tienen métodos propios para ir escribiendo y leyendo.

SINTAXIS:

flujo("nombre_fichero.extension");

EJEMPLO: Fichero secuencial.

#include <iostream.h>

#include <fstream.h>

#include <stdio.h>

#include <stdlib.h>

void main()

{

     ofstream out("fichero.tex"); 

     if (!out)

     {

         cout << "El archivo no puede abrirse";

         exit(1);

     }

     char cad[80];

     cout << "Escritura de cadenas. Salir dejar en blanco\n";

     do

     {

         cout<<": ";

         gets(cad);

         out << cad << endl; 

     }while(*cad);

     out.close();

}

BINARIOS SIN FORMATO: Las funciones E/S son read()y write(). La función read() lee num bytes del flujo asociado y los coloca en la variable. La función write() escribe num bytes de la variable en el flujo asociado. 

PROTOTIPOS:

in.read(variable,num_bytes);

out.write(variable,longitud_cadena);

EJEMPLO: Fichero binario. Escritura.

#include <iostream.h>

#include <fstream.h>

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void main()

{

     ofstream out("texto.tex");

     if (!out)

     {

         cout << "El archivo no puede abrirse";

         exit(1);

     }

     char cad[80];

     cout << "Escritura de cadenas. Salir dejar en blanco\n";

     do

     {

         cout<<": ";

         gets(cad);

         out.write(cad,strlen(cad));

     }while(strlen(cad));

     out.close();

}

EJEMPLO: Fichero binario. Lectura.

#include <iostream.h>

#include <fstream.h>

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

void main()

{

     clrscr();

     ifstream in("texto.tex"); 

     if (!in)

     {

         cout << "El archivo no puede abrirse";

         exit(1);

     }

     char cad[80];

     cout << "Lectura de cadenas\n";

     in.read(cad,80);

     cout << cad;

     in.close(); 

     getch();

}

ALEATORIOS: También podemos realizar el acceso aleatorio. Las funciones que se utilizan son seekg() y seekp() para posicionarnos y las funciones get() y put() para leer y escribir en el fichero. Las funciones de posicionamiento y leer-escribir van emparejadas.

PROTOTIPOS:

         out.seekp(posicion,lugar_de_comienzo);

         out.put('char');

         in.seekg(posicion,lugar_de_comienzo);

         in.get(var_char);

LUGAR

DESCRIPCIÓN

ios::beg

Desde el principio.

ios::end

Desde el final.

ios::cur

Posición actual.

EJEMPLO: Fichero aleatorio. Escritura.

#include <iostream.h>

#include <fstream.h>

#include <stdlib.h>

void main()

{

     fstream out("texto1.txt",ios::in|ios::out);

     if (!out)

     {

         cout << "El archivo no se puede abrir";

         exit(1);

     }

     out.seekp(4,ios::beg);

     out.put('z');

     out.close();

}

Capítulo siguiente - Excepciones

Nuestras novedades en tu e-mail

Escribe tu e-mail:

Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Cursos similares a Lenguaje C++. Guía para Programadores


  • Vídeo
  • Alumnos
  • Valoración
  • Cursos
1. Introducción al Lenguaje C
El lenguaje C apareció en 1972, en el diseño del sistema operativo UNIX. Este... [10/05/04]
73.701  
2. Guía de Comandos Rápidos de Linux
Linux es la principal expresión del software libre. Linux ofrece al usuario la... [14/06/04]
22.018  
3. Action Script 3. Lenguaje de programación
Action script 3 . Este curso de informática fue realizado especialmente para las... [04/05/11]
274
Curso con video

El blog de mailxmail|¿Qué es mailxmail.com?|ISSN: 1699-4914|Ayuda
Publicidad|Condiciones legales de mailxmail


¿Quieres recibir más cursos de Programación? ¡Son gratis!