Ver Mensaje Individual
  #12  
Antiguo 05-11-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
No tenés nada que agradecer, hoy por vos mañana por mi...

Se puede usar Reset dentro de un for, lo que sucede que es de lo más ineficiente ya que abrir y cerrar archivos consume tiempo y recursos.
Te agrego un ejemplo donde se hace y aprovecho a usar otro modo para verificar la existencia del archivo.
Código Delphi [-]
...
begin
  Assign(Partidas,'Resultados de las partidas.chess');
  try
    Reset(Partidas);
  except
    Rewrite(Partidas);
  end;
  Write('cuantos datos de partidas va a ingresar?: ');
  Readln(NEntradas);
  for I := 1 to NEntradas do
  begin
    {$I-}                   // desactivar detección de errores
    Reset(Partidas);        // abrir
    if IOResult <> 0 then   // si no existe
      ReWrite(Partidas);    // crearlo
    {$I+}                   // activar detección de errores
    Write('Blancas:');
    Readln(Juego.Blancas);
    Write('Negras:');
    Readln(Juego.Negras);
    Write('Anyo:');
    Readln(Juego.Anyo);
    Write('Resultado:');
    Readln(Juego.Resultado);
    Seek(Partidas,FileSize(Partidas)); // ir al último registro
    Write(Partidas,Juego);             // guardar
    Close(Partidas);                   // cerrar
  end;
...

Fijate que use el procedimiento Seek para que no sobreescriba los registros.

Saludos.

Última edición por ecfisa fecha: 05-11-2010 a las 04:16:18.
Responder Con Cita