Pascal/Turbo Pascal - Abrir un archivo y si no existe crea uno.

 
Vista:

Abrir un archivo y si no existe crea uno.

Publicado por Pascual (94 intervenciones) el 03/03/2005 18:37:26
He de hacer un procedimiento que abra un archivo con un nombre determinado y si el archivo no existe que cree uno nuevo con el nombre introducido. Supongo que se hará con una estructura selectiva pero lo que no se es como decir a Pascal IF <archivo no existe> THEN. ¿Cómo se expresa <archivo no existe>?.
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

Creo que ya se como es

Publicado por Pascual (94 intervenciones) el 03/03/2005 19:11:18
Si IOResult=0 entonces el archivo existe y si IOResult=1 entonces el archivo no existe, ¿verdad?.
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:Creo que ya se como es

Publicado por Hurricane (39 intervenciones) el 03/03/2005 19:20:39
Aveces ta manda error si tratas de abrir un archivo protegido contra escritura, por lo que informaría erróneamente que "no existe" el archivo. Por éso es bueno verificar qué código de error retorna IOResult (Valor entre 0 y 255).

Veamos una modificación a lo que hice antes. A=Archivo y F=Variable de tipo TEXT; Att=Variable que contendrá el atributo actual del archivo.

Assign(F, A);
{$I-}
GetFAttr(F, Att);
SetFAttr(F, Archive);
Reset(F);
{$I+}
If (IOResult>0) then
Begin
Att := Archive;
{$I+}
ReWrite(F);
{$I-}
If (IOResult>0) then
Begin
WriteLn('Imposible crear archivo.');
Halt(1);
End; {If}
......
......
......
......
Close(F);
SetFAttr(F, Att);

Saludos ;-)
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