ARCHIVOS SECUENCIALES PASCAL

Todo sobre Apple, Mac e Iphone Noticias sobre apple,mac, osx, iphone,ipad,apple watch, juegos para mac y appletv

 

UNIDAD 6: PROGRAMACION PASCAL REGISTROS Y ARCHIVOS DIRECTOS

TEMA 2: CREACION LECTURA Y GRABACION ARCHIVOS DISCO PASCAL

Son completamente similares a lo que se hizo con archivos secuenciales

GRABACION

Prog25.PAS

program prog25;uses crt;typealumnos = RECORDclave:integer;nombre:string[30];edad:integer;status:char;end;varalumno:alumnos;archivo: file of alumnos;BEGINclrscr;(* creando y abriendo el archivo *)assign(archivo,'c:progalumnos.dat');reset(archivo);(* moviendo apuntador al final del archivo existente *)seek(archivo,filesize(archivo));(* capturando registro *)write('dame clave : ');readln(alumno.clave);write('dame nombre : ');readln(alumno.nombre);write('dame edad : ');readln(alumno.edad);(* cargando status *)alumno.status :='A';(* grabando el registro al archivo *)write(archivo, alumno);(* cerrando archivo y avisando *)close(archivo);writeln;writeln;writeln('NUEVO REGISTRO INSERTADO');readln;END.

Recordar que la estructura que se uso para crear el archivo se debera usar siempre y con el mismo orden cuando se acceda al archivo con los procesos u operaciones anteriormente mencionados.

Observar que es completamente similar a la creacion de archivos secuenciales.

Se agergo un campo de status de tipo char que se cargo con el caracter 'A' para significar que este registro esta en altas, pueden usar status numericos para cargarlo con numeros que signifiquen diferentes cosas por ejemplo 1.-alta, 2.-baja, 3.- baja temporal, 4.- permiso, etc.

Recuerden que para que funcione el archivo ya debes estar creado, si no quieren usar el programa de creacion de archivos, pueden crearlo directamente en windows con file new text.

LECTURA

Prog26.pas

program prog26;uses crt;typealumnos = RECORDclave:integer;nombre:string[30];edad:integer;status:char;end;varalumno:alumnos;archivo: file of alumnos;BEGINclrscr;(* creando y abriendo el archivo *)assign(archivo,'c:progalumnos.dat');reset(archivo);(* ciclo de lectura y despliegue registro *)while not(EOF(archivo)) dobeginread(archivo,alumno);(* revisando status registro *)if alumno.status = 'A' thenbeginwrite('clave : ');writeln(alumno.clave);write('nombre : ');writeln(alumno.nombre);write('edad : ');writeln(alumno.edad);write(' para continuar ');readln;;end;end;(* cerrando archivo *)close(archivo);END.

Corrida:

image256.jpg

Recordar que siempre debes estar revisando o validando el campo se status o bandera para conocer el estado del registro.

Tareas PROGRAMACION PASCAL

Crear archivos directos de alumnos, provedores, libros, productos, peliculas.

MÁS INFORMACIÓN

El contenido original se encuentra en https://programacionfacil.com/pascal/archivos_secuenciales/
Todos los derechos reservados para el autor del contenido original (en el enlace de la linea superior)
Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail bitelchux@yahoo.es y retiraremos este contenido inmediatamente