12.174 cursos gratis
8.742.809 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:



MailxMail tratarý tus datos para realizar acciones promocionales (výa email y/o telýfono).
En la polýtica de privacidad conocerýs tu derechos y gestionarýs la baja.

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

ýQuý es mailxmail.com?|ISSN: 1699-4914|Ayuda
Publicidad|Condiciones legales de mailxmail