
Ayuda con archivos, dev pascal
Publicado por Andres (1 intervención) el 09/02/2016 18:15:07
Hola, bueno, necesitaba ayuda por un problema que tengo, estaba tratando de hacer algo simple con archivos, pero tengo un problema que al registrar datos, lo hace, pero cuando cierro el programa y lo vuelvo a abrir, registro algo nuevo y reemplaza al primer registro agregado, como si el puntero quedara arriba y no estoy seguro como es correcto, por favor ayuda y gracias. Acá dejo el código, desordenado pero bueno, es algo simple.
También hay otro error que cuando quiero agregar un repeat para el case, no me muestra los registros al presionar "2". Gracias.
Código:
No sé si es la forma correcta de hacer el tema pero bueno, es la primera vez que público acá, disculpen.
También hay otro error que cuando quiero agregar un repeat para el case, no me muestra los registros al presionar "2". Gracias.
Código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Program ascsasa(input,output);
uses crt;
Type
datos=record
nombre:String;
dni:integer;
end;
arch=file of datos;
var
kkk:arch;
aux:datos;
op:integer;
l:char;
Procedure cargar;
begin
repeat
writeln('ingrese dni');
readln(aux.dni);
writeln('ingrese nombre');
readln(aux.nombre);
write(kkk,aux);
writeln('Desea agregar mas datos? (S/N)');
readln(l);
until l='N';
close(kkk);
end;
begin
assign(kkk,'C:\Users\Andres\Documents\Pascal\Archivos\prueba.dat');
reset(kkk);
clrscr;
writeln('1:altas');
writeln('2:mostrar');
writeln('3:salir');
writeln('Ingrese su opcion: ');
readln(op);
case op of
1:cargar;
2:begin
clrscr;
reset(kkk);
seek(kkk,0);
while not eof(kkk) do begin
read(kkk,aux);
writeln(aux.dni,' ',aux.nombre);
end;
close(kkk);
end;
end;
readkey;
end.
No sé si es la forma correcta de hacer el tema pero bueno, es la primera vez que público acá, disculpen.
Valora esta pregunta


0