TStringList и потоки
Автор: Mike Scott
Возможно ли выполнить StringList.SaveToStream во время процесса
WriteComponent? Если необходимо создать код, сохраняющий каждую строку, могу ли
я воспользоваться Stream.WriteStr, или мне необходимо сохранять длину в байтах +
сами символы? (Все мои строки < 256 символов).
Вы можете легко записывать строки, если определите, что список строк вместо
DefineBinaryPropery должен использовать DefineProperty. Чтение и запись должны
выпоняться соответственно с помощью методов TReader и TWriter. Записывать вы
можете приблизительно так:
Writer.WriteListBegin ;
for i := 0 to TheStringList.Count - 1 do
Writer.WriteString( TheStringList[ i ] ) ;
Writer.WriteListEnd ;
|
Для чтения можно воспользоваться следующим кодом:
Reader.ReadListBegin ;
while not Reader.EndOfList do
TheStringList.Add( Reader.ReadString ) ;
Reader.ReadListEnd ;
|
|