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. 🥇 Números y Letras en Azulejos de Cerámica ▷ en Puertas y Fachadas
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:
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.
ARCHIVOS SECUENCIALES PASCAL
TEMA 2: CREACION LECTURA Y GRABACION ARCHIVOS DISCO PASCAL UNIDAD 6: PROGRAMACION PASCAL REGISTROS Y ARCHIVOS DIRECTOS UNIDAD 6: PROGRAMACION PASCAL REGISTROS
adsl
es
https://cdnimages.juegosboom.com/adsltodo.es/1220/dbmicrodb2-adsl-archivos-secuenciales-pascal-1812-0.jpg
2021-07-10
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 [email protected] y retiraremos este contenido inmediatamente