Ver Mensaje Individual
  #1  
Antiguo 16-04-2008
santus santus is offline
Miembro
 
Registrado: ene 2006
Posts: 130
Reputación: 19
santus Va por buen camino
Como cargar datos a un TStringList desde un Stream

Hola Amigos!.. bien, me encuentro en un pequeño problema.

Quiero llenar unos valores de la base de datos a un TstringList. Esto es, una lista guardada con el método TStringList.SaveToStream , y de ahi lo guardo en la base de datos como un campo Blob. El Guardado lo hace correctamente. Ahora me gustaría recuperar esa lista de valores pero no consigo hacerlo. Seguro que es un error de lógica.. paso a mostrarles mi procedimiento.

Código Delphi [-]
 
procedure TfPropiedades.cargarPlanoBase(aFieldBlob: TField);
var
  lista : TStringList;
  stream : TStream;
  I: Integer;
begin
  lista := TStringList.Create;
  stream := TMemoryStream.Create;
  try
    TBlobField(aFieldBlob).SaveToStream(stream);
    if (stream.Size > 0) then begin
      // hasta aquí entra. Los datos me llegan correctamente desde la base.
      lista.LoadFromStream(stream);
      for I := 0 to lista.Count - 1 do begin
        // Aqui ya no entra. Resulta que el valor de lista.Count es 0
      end;
    end;
  finally
    lista.Free;
    stream.Free;
  end;
 
end;

tengo delphi 2007 y la base es Mysql y me conecto con DBX por las dudas que sea algo de la base aunque como dije, no creo porque haciendo un debug los datos llegan correctamente.

Cualquier cosa que se les ocurra me ayudaría un monton.

Gracias a todos!!!
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates.

Última edición por dec fecha: 16-04-2008 a las 16:18:17.
Responder Con Cita