Pascal/Turbo Pascal - Consulta Archivos!

 
Vista:

Consulta Archivos!

Publicado por usuaria (27 intervenciones) el 04/12/2006 19:37:17
Copie el siguiente programa de un libro, pero tengo una duda..en el principal abri el archivo para escritura y luego lo vuelvo a abrir en el procedimiento Copia para lectura (es posible esto? yo tenia entendido de q si se lo abre para una operacion no se lo puede abrir para la otra)..muchas gracias :)

Program Frase;
Uses
crt;
Type
tArchivo=file of char;
Var
letras:tArchivo;
cadena:string;

Procedure Copia (Var arch:tArchivo; cadena:string);
Var
i:integer;

Begin
Reset (arch);
For i:=1 to 19 do
write (Arch,cadena[i]);
end;

Procedure Imprime (Var arch:Tarchivo);
Var
caracter:char;

Begin
reset(arch);
While not eof(arch) do
begin
read(arch,caracter);
write(caracter);
end;
end;

Begin
ClrScr;
Assign(letras,'letras.dat');
rewrite(letras);
cadena:= 'hoy es un lindo dia';
copia (letras,cadena);
imprime(letras);
close(letras);
readkey;
end.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta Archivos!

Publicado por Carlos Guimaraenz (265 intervenciones) el 04/12/2006 20:50:59
Hola Usuaria! Lo que hace Reset, si es que el archivo está abierto, es cerrarlo y volver a abrirlo, y el puntero se sitúa al comienzo. Rewrite hace lo mismo, sólo que en vez de cerrarlo y volver a abrirlo, lo cierra y lo vuelve a crear (y lo abre).

Por lo tanto, no está mal ejecutar una de esas instrucciones con un archivo abierto, pero SÍ debes tener en cuenta que puedes perder los datos (si usas REWRITE inadecuadamente), o bien leer de un lugar del archivo diferente al que podrías estar leyendo en el momento (si usas RESET).

Un beso!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Archivos!

Publicado por usuaria (27 intervenciones) el 05/12/2006 20:33:48
GRACIAS! :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar