Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   MemoryStream linea por linea (https://www.clubdelphi.com/foros/showthread.php?t=27585)

elcigarra 24-11-2005 17:32:15

MemoryStream linea por linea
 
Tengo una lista (TStrings) que toma datos de un TMemoryStream (de nombre txtStream) de la forma:

Lista1.LoadFromStream(txtStream);

Por otra parte los strings que necesito son el 10% nada mas, por lo que tengo un algoritmo para borrar las que no sirven dejando en la lista las pocas que si. El tema es que el Stream es tan grande que la lista es imposible de manejar llena y me gustaría, en vez de cargar todas las lineas como un paquete, cargarlas linea por linea según se vayan a quedar o no?.

El tema, digo yo, se reduce a poder extraer una lina del stream a una variable TString. ¿esto se puede hacer?

OSKR 24-11-2005 18:30:59

Hmmmmmm:confused: nnnnnnn...las cadenas son de tamaño fijo? si es asi podrias extraer el contenido con Read a un vector de caracteres del tamaño fijo y luego lo transformas a AnsiString (o en tu caso tal vez a String). Si no es asi, tal vez una rutina para formar cadenas mediante la extraccion de caracter a caracter te puede servir, claro!! leyendo estos del buffer previamente extraido del Stream. En C se podria hacer redirigiendo flujos y luego aplicando fscanf, pero ignoro como hacerlo en Pascal, o mejor dicho!! creo q si!!, manda ese buffer a un archivo temporal y lo extraes con Read.


La franja horaria es GMT +2. Ahora son las 01:23:39.

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