Archivos Secuenciales

Los archivos secuenciales se denominan de esta manera por que la forma de escribir y leer los datos en un archivo es, desde el principio hasta el fin del archivo, es decir, si yo quisiera acceder a un determinado dato del archivo y este dato se encuentra en la mitad del archivo, para llegar a ese dato necesito pasar por todos los demás datos, de forma secuencial.
Nota: El archivo finaliza con una marca de fin de archivo (eof).
 
Declaración de un archivo
Para declarar un archivo primero se declara una variable tipo text de la siguiente forma:
VAR
VarArchivo : Text;
Una vez declarada la variable se asigna al nombre de algún archivo:
ASSIGN (VarArchivo, NombreArchivo); Donde NombreArchivo es una cadena de caracteres que contiene el nombre del archivo, la unidad de disco donde se encuentra y el directorio.
Por ejemplo:
ASSIGN (VarArchivo, 'C:\DOS\PRUEBA.TXT');
Abrir archivos
Existen tres formas de abrir un archivo:

Rewrite

Reset

Append

 

Escribir datos en un archivo
Para escribir datos a un archivo se utilizan las instrucciones Write y WriteLn, como si se quisiera escribir a la pantalla, con la diferencia de que se especificará la variable de archivo ya declarada.
Ejemplo:
WriteLn(VarArchivo, 'Prueba de archivos'); Esta sentencia grabaría el texto 'Prueba de archivos' en el archivo asignado a VarArchivo.
Leer datos de un archivo
Para leer los datos de un archivo de acceso secuencial se utilizan las instrucciones Read y ReadLn.
La instrucción Read lee uno o varios datos del archivo abierto y deja el puntero en el mismo renglón en el cual leyó los datos, en cambio ReadLn lee los datos y mueve el puntero al siguiente renglón.
Fin del archivo
Normalmente los archivos de este tipo se leen renglón por renglón hasta llegar al final del mismo. Cuando se conoce de antemano el tamaño del archivo es posible utilizar un ciclo FOR, pero es más seguro utilizar la función EOF la cual es verdadera después de que el programa lee la última línea de un archivo de acceso secuencial. La sintaxis de la función EOF es:
EOF (VaribleArchivo);
Es común realizar la verificación de la función con un ciclo WHILE como en el ejemplo
siguiente:
WHILE NOT EOF(Archivo) DO
BEGIN
ReadLn(Archivo, Datos);
WriteLn(Datos);
END;

 

Cerrar archivos
Para asegurar que toda la información se grabe en el disco correctamente es necesario cerrar el archivo antes de que se termine la ejecución del programa, de lo contrario se corre el riego de que la última información que se haya accesado no se grabe en su totalidad.
 
La instrucción para cerrar un archivo es Close, y su sintaxis es:
Close (VaribleArchivo);
Función Eoln
La función Eoln sirve para verificar si el puntero ha llegado al final de la línea. Regresa el valor verdadero si se encuentra al final. Comúnmente se utiliza en las lecturas carácter por carácter.
Agregar datos a un archivo de texto
Para añadir datos a un archivo de texto son necesarios los siguientes pasos:
*Asignar un archivo a una variable con Assign
*Agregar los datos con el procedimiento Append
Escribir los datos
Cerrar el archivo
A continuación se ilustra un ejemplo de un programa que agrega una línea a un archivo de
texto:
PROGRAM Archivo;
VAR
Texto : TEXT;
BEGIN
Assign (Texto, 'PRUEBA.DAT');
ppend(Texto);
WriteLn(Texto, 'Agregando una linea al archivo PRUEBA.DAT');
Close (Texto)
END.
 
ARCHIVOS SECUENCIALES INDEXADOS
Estos archivos mantienen las características básicas de los archivos secuenciales: los registros se organizan en secuencia basada en un campo clave.
Definición de Índice:
Un índice en informática es como el índice de un libro donde tenemos los capítulos del libro y la página donde empieza cada capítulo.
Un índice es una estructura de datos que permite recuperar las filas de una tabla de forma más rápida además de proporcionar una ordenación distinta a la natural de la tabla. Un índice se define sobre una columna o sobre un grupo de columnas, y las filas se ordenarán según los valores contenidos en esas columnas.
Por ejemplo, si definimos un
índice sobre la columna población de la tabla de clientes, el índice permitirá recuperar los clientes ordenados por orden alfabético de población.
Ventajas de los archivos secuenciales indexados
· Rápido acceso.
· El sistema de gestión de archivos se encarga de relacionar la posición de cada registro con su contenido mediante la tabla de índices.
Desventajas
· Desaprovechamiento del espacio por quedar huecos intermedio cada vez que se actualiza el archivo.
· Se necesita espacio adicional para el área de índices.
Características de los Archivos Secuenciales Indexados:
· Los registros se organizan en una secuencia basada en un campo clave.
· Se incluye una tabla de índices que proporciona una capacidad de búsqueda para llegar a las proximidades de un registro deseado mediante la clave.