Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-04-2008
santus santus is offline
Miembro
 
Registrado: ene 2006
Posts: 130
Poder: 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
  #2  
Antiguo 16-04-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
...
 
    TBlobField(aFieldBlob).SaveToStream(stream);
    if (stream.Size > 0) then
     begin
      stream..Position := 0;
      lista.LoadFromStream(stream);
 
...
Responder Con Cita
  #3  
Antiguo 16-04-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
El ejemplo de delphi 6 pone esto:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  TempStream : TMemoryStream;
begin
  TempStream := TMemoryStream.Create;

  ListBox1.Items.SaveToStream(TempStream);  // write list box contents to the 
                                            // stream
  TempStream.Position := 0;      // reset to the beginning of the stream
  RichEdit1.Lines.LoadFromStream( TempStream); // load stream contents into memorich 
                                               // edit control

  TempStream.Free;

end;
Responder Con Cita
  #4  
Antiguo 16-04-2008
santus santus is offline
Miembro
 
Registrado: ene 2006
Posts: 130
Poder: 19
santus Va por buen camino
Smile Gracias!!!

Muchas Gracias!!! Efectivamente era el stream.Position := 0;

Les agradesco un monton por la rapidez de sus respuestas!
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cargar datos desde Excel Drakyto Servers 3 07-09-2007 23:06:42
Crear base de datos y cargar datos desde delphi Albano MySQL 4 17-05-2007 20:01:18
¿Cómo cargar datos en un DBCombobox desde una BD? pyanqn Conexión con bases de datos 3 28-10-2005 02:04:18
Cargar desplegable desde base de datos melanthea JAVA 0 07-09-2004 14:03:09
Cargar datos desde archivo texto mosorio Firebird e Interbase 1 25-08-2003 20:54:36


La franja horaria es GMT +2. Ahora son las 08:59:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi