Stream, basado en la clase TStream de Delphi, es como su traducción lo indica, un flujo de datos. Es básicamente una transmisión de datos con un principio, un final y un flujo de datos intermedio.
Con los objetos descendientes de la clase TStream de Delphi, se pueden puede escribir, leer o transmitir en varios tipos de medios de almacenamiento, como discos duros, memorias, a través de internet, entre muchos otros.
Que tipos de datos podemos transmitir con un Stream?
Un Stream o flujo de datos, puede contener el tipo de datos que desees y en el orden que desees, así mismo se puede escribir cualquier combinación de datos de tamaño variable en una secuencia. Sin embargo, recuerda que eres el responsable de mantener este orden, Delphi no puede “recordar” qué tipo de datos hay en una secuencia, o en qué orden.
Tipos de Stream
La clase TStream es de tipo abstracta para objetos Stream, esto significa que la clase TStream nunca se debe usar como tal, sino solo en sus objetos descendientes.
Para transmitir cualquier tipo de datos, se debe elegir una clase descendiente de TStream que concuerde al tipo de dato específico a enviar y su necesidad de almacenamiento, como veremos a continuación:
- TFileStream: Se utiliza para el envío de archivos
- TMemoryStream: Utilizada para trabajar con los búfer de memoria
- TStringStream: Se pueden manipular cadenas con esta clase
- TBlobStream: Si deseas transferir campos de tipo Blob, esta es la clase correcta
- TWinSocketStream: Con esta clase envías lo que sea a través de una conexión socket
- TOleStream: Utilizada para leer y escribir en una interface COM