Programa

Páginas: 10 (2299 palabras) Publicado: 9 de marzo de 2013
program pruebaFicheroBinarioSecuencial(input,output);
var
linea : string(255);
fSec : file of string(255);
begin
{Se indica que se desea rescribir el fichero y el buffer se coloca en la primera posición}
rewrite(fSec);
writeln('Escriba caracteres a insertar en el fichero. Dejeuna línea vacía para culminar.');
readln(linea);
while linea <> '' do
begin
{Se indica que se desea escribir el contenido de la variable en el fichero}
fSec^ := linea;
{El programa hace un volcado del buffer en el fichero y avanza al siguiente registro}
put(fSec);{En lugar de escribir las dos líneas de código superiores se podría hacer con:
write(fSec,linea);}
readln(linea);
end;
{Se indica que se desea acceder al fichero en modo lectura.
El buffer se coloca en la primera posición}
reset(fSec);
writeln('Contenido de fTexto:');while not eof(fSec) do
begin
{Se muestra por pantalla el contenido del buffer}
writeln(fSec^);
{Se avanza a la siguiente posicion}
get(fSec);
{En lugar de escribir las dos líneas de código superiores se podría hacer con:
read(fSec,linea);weiteln(linea);}
end;
end.

program pruebaFicheroBinarioAccesoDirecto(input,output);
const
MAX_INDICE = 3;
type
tLinea = string(255);
tIndice = 1..MAX_INDICE value 1;
var
linea : tLinea;
indice,
lectura : tIndice;
fDir : file [tIndice] of tLinea;
begin
rewrite(fDir);
writeln('Escriba caracteres a insertar en el fichero. Deje una línea vacía paraculminar.');
readln(linea);
while (linea <> '') and (indice <= MAX_INDICE) do
begin
{Se indica la posición sobre la que se escribirá}
SeekWrite(fDir,indice);
fDir^ := linea;
{El programa hace un volcado del buffer en el fichero y avanza al siguiente registro}
put(fDir);
{Se incrementa el índice, aunque hay que tener en cuenta que
en este ejemplo el índicecuenta la línea vacía que indica el final}
if indice = MAX_INDICE then linea := ''
else begin readln(linea);indice := indice + 1; end;
end;
reset(fDir);
writeln('Contenido de fTexto:');
{Desde el primer registro hasta el último escrito}
while lectura <= indice do
begin
SeekRead(fDir,lectura);
{Se muestra por pantalla el contenido del buffer}
writeln(fDir^);
{Seincrementa el índice de lectura}
{Nota: Si se ha llegado al último registro se invoca halt.
No es aconsejable, simplemente es para no complicar más el ejemplo}
if (lectura + 1) <= indice then lectura := lectura + 1 else halt;
end;
end.

ARCHIVOS BINARIOS
* Las componentes de un archivo de texto son de tipo char y están organizados en líneas.
* Sin embargo, las componentesde un archivo pueden ser de cualquier tipo predefinido o definido por el usuario excepto de tipo archivo.
* Una declaración general de archivos tiene la siguiente sintaxis: 

FILE OF( tipo-componente ) 

donde FILE y OF son palabras reservadas, y tipo-componente puede ser cualquier tipo excepto otro tipo archivo.
Ejemplo:
TYPE
   DiasDeSemana = ( Lunes,Martes, Miercoles, Jueves,
                    Viernes, Sabado, Domingo );
   TipoCadena = PACKED ARRAY[1..20] OF char;
   Lista = ARRAY[1..100] OF integer;
   RegistroEmpleado = RECORD
                         Nombre : TipoCadena;
                         Numero, Dependientes : integer;...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programa
  • Program
  • Un Programa
  • Programas
  • Programas
  • Programa
  • Programador
  • Program

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS