скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

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 ;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook