Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Нефиксированная длина

Здравствуйте, comp!

В Delphi программировать начал недавно.
У меня небольшой вопрос...
Имеется тип:

type
TDocType=(TP_TEXT, TP_BITMAP);
TAnswer=record
AnswerText: TStringList;
AnswerBitmap: TBitmap;
Queue: integer;
Name: string;
end;
TAnswers=array of TAnswer;
TQuestion=record
QueType: TDocType;
AnsType: TDocType;
QuestionText: TStringList;
QuestionBitmap: TBitmap;
Answers: TAnswers;
Queue: integer;
Name: string;
end;
TQuestions=array of TQuestion;
TDocument=record
Name,
Author,
Version: string;
Max: integer;
Comments: TStringList;
Questions: TQuestions;
end;

Как TDocument сохранить в файл?
Я знаю, что нужны типы данных с фиксированной длиной, но всё-таки...
Можно сохранить не TDocument, а несколько TQuestion, тогда не будет
информации о документе...
Я так пробовал, но вместо TStringList сохраняется, естественно,
ерунда, а не сами строки.
Возможно ли вообще сохранить тип с нефиксированной длиной?

Ответить   Sun, 17 Apr 2005 12:11:17 +0600 (#352616)

 

Ответы:

Здравствуйте, Alexo.

Вы писали 17 апреля 2005 г., 9:11:17:

Если решать "в лоб", то нужно использовать или нетипизированные файлы,
или файловые потоки. И там, и там придется записывать все поля записей
"руками", списочные и массивные поля записывать поэлементно, а для полей
строчечного типа и типа TBitmap нужно еще и их размер в байтах
записывать в тот же самый файл - чтобы потом можно восстановить было
из файла. Неудобно все это.

А если без мороки все это делать, и если задача позволяет свободу в
выборе методов решения, то лучше написать базу данных.

Ответить   vadim_sheshunov Sun, 17 Apr 2005 22:30:46 +0300 (#352797)

 

Базу данных писать как-то не очень хочется...
Ну ладно, спасибо за совет, я ещё как-нибудь попробую...
Тема, если не возражаете, закрыта.

Ответить   Mon, 18 Apr 2005 14:41:46 +0400 (#353307)