Un poco de c++ archivos

Solo disponible en BuenasTareas
  • Páginas : 24 (5959 palabras )
  • Descarga(s) : 0
  • Publicado : 23 de mayo de 2010
Leer documento completo
Vista previa del texto
UNIDAD 8: ARCHIVOS
TEMA 8.1. C++ ARCHIVOS (INTRODUCCION)
Si bien es cierto que ya se pueden manejar gran cantidad de datos del mismo y diferente tipo al mismo tiempo el problema es que al terminar de ejecutarse el programa los datos se pierden.
De esta situación nace el concepto de archivos que son medios que facilita el lenguaje para almacenar los datos en forma permanente, normalmente enlos dispositivos de almacenamiento standar.
En general es necesario entender algunos conceptos elementales de sistemas de archivos tradicionales.
Como nota a tomar en cuenta los datos que se van almacenando en un archivo de disco, se almacenan en renglones consecutivos y cada renglon en disco, se conoce como registro del archivo, favor de no confundir el concepto de registro de archivo yregistro o estructura como variable ya analizada, son dos cosas totalmente diferentes aunque desafortunadamente se llamen igual.
Primero: Operaciones con archivos
ESCRIBIR O GRABAR: Es la operacion mas elemental con un archivo, consiste en tomar un o unos datos en variables de cualquier tipo (escalar, mezcla de datos, arreglos, estructuras) y almacenarlas en un archivo de datos en disco.
LEER:Operación consistente en sacar los datos del archivo en disco y mandarlos o cargar la variable respectiva
Segundo: Organización de archivos
En general existen dos tipos de archivos:
Archivos Secuenciales.- En este caso los datos se almacenan en forma consecutiva y no es posible leer (recuerdan que significa esta operación) ningun registro (recuerdan la nota de arriba) directmente, es decir paraleer el registro n se debera recorrer o accesar los n-1 registros anteriores.
Archivos Directos o Random.- Para este caso si se puede acceder o leer un renglon n cualquiera.
Tercero: Tipo de archivos
En general existen tantos tipos de archivos como tipos de datos existen, es decir:
El paquete standar de input/output de “C”, hace disponible 4 métodos o maneras diferentes de leer y escribirlos datos a disco.
Tres de ellas corresponden exactamente a lo aprendido de leer y escribir datos desde el teclado hacia la pantalla.
1.- Datos a ser grabados o leidos como un caracter a la vez, se utilizaran funciones analogas a getchar y putchar.
2.- Datos que pueden ser leidos o grabados como una string se usaran funciones analogas a gets y puts.
3.- Datos que se capturen o desplieguencon formatos parecidos a los usados por scanf y printf se usaran funciones similares, es decir seran problemas que involucran mezclas de strings, caracteres, floats, etc.
4.- Tambien se podran leer y escribir datos de tipo arreglo y registros utilizando instrucciones apropiadas, en resumen:
caracter
string
Formateado
Registros y arreglos
Leer
getc()
fgets()
fscanf()
fread()Escribir
putc()
fputs()
fprintf()
fwrite()
NOTA: Ya que se decide utilizar algun archivo especifico de datos(caracteres, strings, formateados, registros o arreglos) solo utilizar las funciones de escritura y lectura de ese tipo de archivo, por ningun motivo mezcle funciones de lectura y escritura de otro tipo de archivos.

Cuarto: Almacenamiento en archivos
Modo Texto: en este casolos datos son almacenados usando Ascii y por tanto son plenamente visibles usando cualquier editor.
Modo Binario: en este caso los datos son almacenados en notación hexadecimal y por tanto se ocupa un editor binario para reconocerlos, sin embargo un archivo binario es mas compacto que un archivo texto.
PARA PROPOSITO DE ESTE CURSO, ENTONCES NOS CONCENTRAMOS EN ARCHIVOS DISCO DE REGISTROS OESTRUCTURAS, SECUENCIALES, DIRECTOS Y BINARIOS, DE C++ PERO NO OLVIDAR QUE EXISTEN LOS OTROS TIPOS QUE MAS ADELANTE ESTARAN INCLUIDOS EN ESTE LIBRO.

TEMA 8.1.2. ARCHIVOS DISCO (CONTINUACION)
Existen muchas operaciones asociadas a archivos en c++, las mas elementales son:
1.- Creación de Archivo.- En este proceso se pretende solamente crear un archivo nuevo en disco con su nombre tipo y...
tracking img