metodo file pascal
TRANSCRIPT
UPNFM-PREUFODMétodo File En Pascal
El Tipo FILE
Archivos de Texto
Archivo de Tipo
Tipo SimpleTipo Estructurado
Tipo Puntero
Sintaxis
TYPE tfichero = FILE OF Tipo_de_Datos;tficheroTexto = TEXT;
VARnom_fich1 : FILE OF Tipo_de_Datos:nom_fich2 : TEXT;
Operación de Asignación de un Archivo
En Turbo Pascal esta operación se realiza mediante un procedimientopredefinido llamado ASSIGN (Asignar); la sintaxis de este procedimiento es:
ASSIGN (Fich_Logico, Nombre_archivos_fisico);
• Fich_Logico: Es una variable de tipo archivo.
• Nombre _Archivo: Se trata de cadena de caracteres (o de tipo STRING) que representa el Nombre del archivo físico, o el lugar donde este se encuentra.
Archivos Como Parámetros
El caso de arrays y registro, una función no puede devolver ningún tipo de datos estructurados,por lo que en el caso de los archivos tampoco es posible.
Este hecho se debe a que los contenidos de un archivo no se puede copiar en otro utilizandoUna instrucción de la forma:Variable_archivo 1:= variable_archivo 2;
SintaxisA continuación se muestran algunos ejemplos de paso de parámetro de tipo fichero:TYPE Tipo_mes= (enero, febrero, marzo, abril, mayo, junio, julio, agosto, septiembre, octubre, noviembre, diciembre); Fich_meses = FILE OF Tipo_mes; Fich_letras = FILE OF Char; Fich_numeros = FILE OF real; VAR Fmeses : Fich_meses; Libro1, Libro2 : Fich_numeros; Fdatos, Festadisticas : Fich_numeros; logica : boolean;PROCEDURE uno (VAR f1 : Fich_meses; VAR f2, f3 : Fich_letras);….FUNCTION dos (VAR f1 : Fich_letras; VAR f2 : Fich_numeros): boolean;….BEGIN uno (Fmeses, Libro1, Libro2); logica : = dos (Libros1, Fdatos); logica : = dos (Libros2, Festadisticas);END.
Archivos de Texto
TYPE Tfich_texto1 = FILE OF char; Tfich_texto2 = TEXT; VAR nom_fich1 : Tfich_texto1; nom_fich2 : Tfich_texto2; nom_fich3 :TEXT;
Caso particular de los archivos de texto:1.- Declarar y asignar el archivo de texto (físico).2. - Abrir el archivo.3.- Leer/Escribir los datos sobre el archivo.4.- Cerrar el archivo.
Declaración y asignación de archivos de texto
TYPE Fich_texto = TEXT; Fich_caracteres = FILE OF char; VAR flineas : Fich_texto; fletras : Fich_caracteres;BEGIN (asignación del fichero de texto) assign (flineas, ‘fichero_ejermplo1.txt’); (asignación del fichero de caracteres) assign (fletras, ‘fichero_ejemplo2.txt’); ……END.
Apertura de archivos de texto
RESET
APPEND
REWRITE
Lectura/Escritura de datos en archivos de texto
Lectura en archivo de texto: para poder leer los elemento de un archivo es necesario haberlo abierto previamente mediante una operación de RESET. Existe dos procedimiento que nos permiten realizar la operación de lectura:
READ(Archivo_logico, x1,x2,x3,…….,xn);READLN(archivo_logico x1,x2,x3,…..,xn);
Sintaxis
Var fichero: TEXT; w, x, y, z : char;….Begin assign(fichero, ‘c:\mifichero.txt’ reset(fichero); {se abre para lectura} read(fichero, w, x, y); {se leen tres caracteres seguidos} read(fichero, z); {se lee un caracter} writeln(w, x, y, z); {se muestran por pantalla} close(fichero); {Se cierra el fichero}End.
Escritura En Archivos De TextoSintaxis
Para poder escribir datos en un archivo de texto es necesario haberlo abierto Previamentecon cualquiera de los dos procedimientos predefinidos de Pascal:
•REWRITE•APPEND
Una vez abierto el archivo, se pueden escribirse datos (caracteres o cadenas de Caracteres) empleando los procedimientos:
WRITE(fich_logico, E1, E2, …, En);WRITELN(fich_logico, E1, E2, …,En);
Operación De Cierre En Archivos De Texto
Si no se desea perder todo los datos de un archivo, una vez terminadas las diferentesOperaciones sobre el, es necesario cerrarlo. La operación de cierre de un fichero situaun carácter especial en el lugar donde se encuentra situado el puntero de Lectura/EscrituraEl carácter EOF (End Of File, o fin del fichero) es utilizado para identificar el final del mismo.
Close(arch_logico);
EOLN
EOF
Otras Operaciones Con Archivos De Texto
Sintaxis:
EOLN(Archivo_Logico);EOF(Archivo_Logico);
Archivos Con Tipo Binarios
Sintaxis:TYPE tFichero_binario = FILE OF tipo_base;VAR nom_fiche1 : tFichero_binario; nom_fiche2 : FILE OF tipo_base;
Operaciones Con Archivos Binarios
Declaración y Asignación del Archivo
Apertura Del Archivo Binario
Lectura/Escritura en Archivos Binarios
Operación de Cierre en un archivo Binario
Declaración y Asignación del Archivo
Estas operaciones se realizan exactamente igual que para los archivos de texto:
TYPE fBinario1 = FILE OF integer; fBinario2 = FILE OF boolean;VAR F1 : fbinario1; F2 : fbinario2;BEGIN {Asignacion del fichero de enteros} assign(F1,’Fichero_ejemplo1.dat’); {Asignacion del fichero de Booleanos} assign(F2,’Fichero_ejemplo2.dat’); ……..END.
Apertura Del Archivo Binario
RESET(Archivo_logico)
REWRITE(Archivo_Logico)
APPEND(Archivo_Logico)
Lectura/Escritura En Archivos Binarios
Lectura de Datos
Escritura deDatos
READLN/WRITELN
Operación De Cierre En Un Archivo Binario
La operación de cerrado del archivo se realiza exactamente igual que en el caso de los archivos de texto. Realizar esta operación es igualmente importante si no se desea perder los datos almacenados en el archivo binario. La sintaxis es:
CLOSE(archivo_logico);
Otras Operaciones Con Archivos Binarios
Operaciones De Control
Operaciones De Acceso Directo
Operaciones Para La Gestión De Archivos Con Tipo
Operaciones De Control
Estas operaciones proporcionan información sobre la posición donde se encuentraEl puntero de lectura/escritura. Existe una funcion de control basica que puede utilizarse:
•EOF (archivo_logico): esta funcion booleana devuelve verdadero si el puntero de lectura/escritura se encuentra situado sobre el carácter fin de fichero (EOF).•EOLN(archivo_logico): al igual que sucede con las funciones predefinidas READLN y WRITELN, esta funcion no tiene sentido en archivos con tipo, y por lo tanto no existe para este tipo de datos.
Operaciones De Acceso Directo
FileSize
Seek
FilePos
Operaciones Para La Gestión De Archivos Con Tipo
RENAME
ERASETRUNCATE