![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запись динамического массива в файл [D6, Win95/98]
Artem K. © (2002-03-12 10:38:00)Здравствуйте, Мастера.
Имется запись, например:
type
r=record
a:array of string[30];
b:array of double;
end;
var
f:file of r;
p:r;
...
setlength(p.a,10);
setlength(p.b,20);
...
// Заполнение массивов данными
...
assignfile(f,"filename.ext");
rewrite(f);
write(f,p);
closefile(f);
...
Но при компиляции выдаётся ошибка:
Type "r" needs finalization - not allowed in file type
Подскажите как сохранить в файл запись с полями типа динамический массив.
Anatoly Podgoretsky (2002-03-12 21:16:00) [1]В файл недо записывать значения, а не массив указателей. Поэтому конструкция f:file of r; немного бессмысленна.
Sasha9 (2002-03-12 11:04:00) [2]ещё можно использовать нетипизированный файл (var f:file;), только вместо read и write - blockread и blockwrite
Alx2 (2002-03-12 10:41:00) [3]Используй бинарные файли или потоки.
Для информации о количестве элементов в массивах заведи в recordе специальные поля.