[Overview][Constants][Types][Classes][Procedures and functions][Variables] | Reference for unit 'Classes' (#fcl)

# TStringStream

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Stream that stores its data in a string.

## Declaration

`type TStringStream = class(TStream)`
`protected`
`procedure SetSize(); override;` |  | Sets the size of the stream.
`public`
`constructor Create();` |  | Creates a new stringstream and sets its initial content.
`function Read(); override;` |  | Reads from the stream.
`function ReadString();` |  | Reads a string of length Count
`function Seek(); override;` |  | Sets the position in the stream.
`function Write(); override;` |  | Write implements the abstract TStream.Write method.
`procedure WriteString();` |  | WriteString writes a string to the stream.
`property DataString: String; [r]` |  | Contains the contents of the stream in string form
`end;`

## Inheritance

`TStringStream` |  | Stream that stores its data in a string.
`TStream` |  | Base class for streams.
`TObject`

## Description

TStringStream stores its data in an ansistring. The contents of this string is available as the DataString property. It also introduces some methods to read or write parts of the stringstream's data as a string.

The main purpose of a TStringSTream is to be able to treat a string as a stream from which can be read.

## See also

TStream |  | Base class for streams.
TStringStream.DataString |  | Contains the contents of the stream in string form
TStringStream.ReadString |  | Reads a string of length Count
TStringStream.WriteString |  | WriteString writes a string to the stream.