TMemoryStream
Думайте о потоке памяти как о расположенном в памяти файле. Команды для работы с потоком очень похожи на команды для работы с файлами. (В действительности, это ближе к команде blockwrite.)
Вот "медленный" путь записи строки в поток:
Данный код пишет за один проход один символ строки. Просто и легко для понимания, но немного медленно в работе. Для ускорения процесса можно сделать так:
Две строчки делают то же самое, они добавляют символы в поток. Если вы не делали никаких перемещений внутреннего курсора потока (seek), символы просто добавляются в конец.
Теперь, для соблюдения перевода каретки, вы должны добавлять эти спецсимволы сами:
Или вы можете использовать более изощренный метод:
Также, вы можете создать собственный класс-потомок TMemoryStream, с методом записи строк.