Cómo uso Rewrite y Append
Publicado por Julio (12 intervenciones) el 08/12/2002 21:24:22
Hola a todos.
Cómo puedo crear una base de datos para guardar los datos de mis amigos, de tal forma que si el archivo no existe, pueda crearlo y guardar registro, pero si existe se abra y pueda seguir agregando más registros sin borrar los que ya existían.
Pienso que debo usar Rewrite para crear y Append para agregar, pero no me resulta.
Aquí les envío parte del código para que vean el o los errores que estoy cometiendo.
...
Type
Ficha = Record (* Nuestras fichas *)
Nombre: String [40];
Telefono: String [10];
Direccion: String [35];
DiaNacim: Byte;
MesNacim: Byte;
AnoNacim: Byte;
End;
Var
Fichero: File of Ficha; (* Nuestro fichero *)
DatoActual: ficha; (* La ficha actual *)
...
Begin
Assign ( Fichero, 'D:\LENGUAJE\T-PASCAL\BIN\AGENDA.DAT' );
{$I-} (* Deshabilita comprobación de entrada/salida *)
Append ( Fichero ); (* Lo intentamos abrir para agregar*)
{$I+} (* La habilitamos otra vez *)
If IoResult <> 0 Then Rewrite (Fichero); (* Lo abro para agregar*)
...
Estaré usar mal las declarativas {SI-} y {$I+}, no son compatibles Rewrite y Append o cómo puedo hacerlo.
Espero que entiendan mi duda y me ayuden.
De antemano, muchas gracias.
Julio
[email protected]
Cómo puedo crear una base de datos para guardar los datos de mis amigos, de tal forma que si el archivo no existe, pueda crearlo y guardar registro, pero si existe se abra y pueda seguir agregando más registros sin borrar los que ya existían.
Pienso que debo usar Rewrite para crear y Append para agregar, pero no me resulta.
Aquí les envío parte del código para que vean el o los errores que estoy cometiendo.
...
Type
Ficha = Record (* Nuestras fichas *)
Nombre: String [40];
Telefono: String [10];
Direccion: String [35];
DiaNacim: Byte;
MesNacim: Byte;
AnoNacim: Byte;
End;
Var
Fichero: File of Ficha; (* Nuestro fichero *)
DatoActual: ficha; (* La ficha actual *)
...
Begin
Assign ( Fichero, 'D:\LENGUAJE\T-PASCAL\BIN\AGENDA.DAT' );
{$I-} (* Deshabilita comprobación de entrada/salida *)
Append ( Fichero ); (* Lo intentamos abrir para agregar*)
{$I+} (* La habilitamos otra vez *)
If IoResult <> 0 Then Rewrite (Fichero); (* Lo abro para agregar*)
...
Estaré usar mal las declarativas {SI-} y {$I+}, no son compatibles Rewrite y Append o cómo puedo hacerlo.
Espero que entiendan mi duda y me ayuden.
De antemano, muchas gracias.
Julio
[email protected]
Valora esta pregunta


0