archivo binario apartir de archivo de texto
Publicado por crear archivo binario. (17 intervenciones) el 02/05/2007 21:54:16
tengo un problema cuando trato de crear un archivo binario a partir de un archivo de texto: el problema es q no lo crea. si me pueden decir q error cometo se lo agradecere. estos son los dos modulos q utilizo para crear el archivo (el programa compila, pero no crea el archivo binario apartir de un archivo de texto.)
ya probe ingresando el nombre del archivo de texto con y sin la extencion del archivo ( .txt ).
precondicion:
·el archivo de texto ya esta creado con la fecha de nacimiento y nombre y apellido.
·En el archivo de texto debe haber una línea por persona, primero la fecha de nacimiento y, separado por un espacio, el apellido y nombres.
·las fechas se almacenan con formato aaaammdd ejemplo: 19860429
poscondicion:
·archivo binario creado con los datos de cada persona, fecha y nombre.
program practica1ejercicio5;
uses crt;
type registro=record
fecha:longint;
nombre:string[50];
end;
archivo=file of registro;
fichero=file of string;
procedure leer_persona(var txt:fichero;var fecha:longint;var nombre:string);
var num:longint;
s,t:string;
begin
read(txt,s);
t:=copy(s,1,4);
val(t,num);
fecha:=num;
nombre:=copy(s,10,49);
readkey;
end;
procedure crear_Archivo(var a :archivo); // creo un archivo binario apartir de una archivo de texto
var direccion:string;
txt:fichero;
fechas:longint;
nombres:string;
r:registro;
begin
write('nombre del nuevo archivo binario: ');
readln(direccion);
assign(a,direccion);
rewrite(a);
reset(a);
write('nombre del archivo de texto: ');
readln(direccion);
assign(txt,direccion);
reset(txt);
while not eof(txt)do begin
leer_persona(txt,fechas,nombres);
r.fecha:=fechas;
r.nombre:=nombres;
write(a,r);
end;
close(a);
close(txt);
writeln('presione una tecla para continuar.. ');
readkey;
clrscr;
end;
ya probe ingresando el nombre del archivo de texto con y sin la extencion del archivo ( .txt ).
precondicion:
·el archivo de texto ya esta creado con la fecha de nacimiento y nombre y apellido.
·En el archivo de texto debe haber una línea por persona, primero la fecha de nacimiento y, separado por un espacio, el apellido y nombres.
·las fechas se almacenan con formato aaaammdd ejemplo: 19860429
poscondicion:
·archivo binario creado con los datos de cada persona, fecha y nombre.
program practica1ejercicio5;
uses crt;
type registro=record
fecha:longint;
nombre:string[50];
end;
archivo=file of registro;
fichero=file of string;
procedure leer_persona(var txt:fichero;var fecha:longint;var nombre:string);
var num:longint;
s,t:string;
begin
read(txt,s);
t:=copy(s,1,4);
val(t,num);
fecha:=num;
nombre:=copy(s,10,49);
readkey;
end;
procedure crear_Archivo(var a :archivo); // creo un archivo binario apartir de una archivo de texto
var direccion:string;
txt:fichero;
fechas:longint;
nombres:string;
r:registro;
begin
write('nombre del nuevo archivo binario: ');
readln(direccion);
assign(a,direccion);
rewrite(a);
reset(a);
write('nombre del archivo de texto: ');
readln(direccion);
assign(txt,direccion);
reset(txt);
while not eof(txt)do begin
leer_persona(txt,fechas,nombres);
r.fecha:=fechas;
r.nombre:=nombres;
write(a,r);
end;
close(a);
close(txt);
writeln('presione una tecla para continuar.. ');
readkey;
clrscr;
end;
Valora esta pregunta


0