Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.18;
Скачать: CL | DM;

Вниз

Сохранение записи в файл.   Найти похожие ветки 

 
Belorus ©   (2007-02-23 10:40) [0]

Есть структура
TMonthShed = record
 MonthNum : Cardinal;
 Year     : Cardinal;
 Clients : array of Cardinal;
 Days    : array of Cardinal;
 end;

При попытке сохранить её в типизированый файл сообщает мол

Type TmonthShed needs finalization.

Что можно сделать чтобы сохранить запись ? Просто таких структур у меня больше 15, и писать для каждой процедуру сохранения и загрузки - мне кажется не лучшим выходом.


 
Elen ©   (2007-02-23 10:56) [1]

воспользоваться процедурой finalize перед записью в файл


 
S@shka ©   (2007-02-23 11:13) [2]


> воспользоваться процедурой finalize перед записью в файл


Интересно а что структура динамически создается?


 
Elen ©   (2007-02-23 11:20) [3]


> При попытке сохранить её в типизированый файл

Может при попытке компиляции?


 
Virgo_Style ©   (2007-02-23 11:26) [4]

Как вы представляете себе запись динамического массива в типизированный файл


 
Elen ©   (2007-02-23 11:29) [5]


> Virgo_Style ©   (23.02.07 11:26) [4]

в типизированный никак. Через BlockWrite представляю, поэтому и удивила фраза : "При попытке сохранить её в типизированый файл", хотя эта ошибка должна была вылезти при компиляции.


 
RASkov   (2007-02-23 12:25) [6]

> [0] Belorus ©   (23.02.07 10:40)

Либо объяви структуру "законченной"(массивы статические)
либо откажись от типизированного файла и пиши в нетипизированный файл блоками.
И как уже заметили, такую ошибку делфи генерит на этапе компиляции, а не в рантайме.

> писать для каждой процедуру сохранения и загрузки - мне
> кажется не лучшим выходом

Может всетаки наоборот, как раз написать пару процедур SaveStruktToFile и LoadStruktFromFile - общих для всех твоих структур - и есть выход?


 
Belorus ©   (2007-02-23 13:00) [7]

Может при попытке компиляции?

Да . Именно при компиляции. Спасибо что поправил.


Может всетаки наоборот, как раз написать пару процедур SaveStruktToFile и LoadStruktFromFile - общих для всех твоих структур - и есть выход?

Скорее всего именно так. :(

Как вы представляете себе запись динамического массива в типизированный файл
Ну скажем сперва делфи запищет размер а дальше сами элементы. Благо они все по 4 байта. IMHO лучше чтобы компилятор умел делать это, чем не умел.


 
Virgo_Style ©   (2007-02-23 13:34) [8]

Belorus ©   (23.02.07 13:00) [7]
IMHO лучше чтобы компилятор умел делать это, чем не умел.


Недолгий поиск в инете показал, что со времен изучения мной языка ничего не изменилось и типизированный файл по-прежнему состоит из одинаковых блоков одинаковой длины. А значит - не содержат длинных строк и динамических массивов...

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


 
Elen ©   (2007-02-23 15:47) [9]


> Спасибо что поправил.

Опять опечатался?


 
Belorus ©   (2007-02-23 16:29) [10]

Опять опечатался?
Ещё раз извиняюсь. Но теперь не опечатался. Сейчас просто не задумался.
По негласным правилам интернета любой собеседник мужского пола и обращаться можно на ты. Но первое уже далеко не всегда истина, а привычка осталась.


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

По очевидным причинам этот бред и то чего пожелал я несоизмеримы. Но всё равно спасибо. Я уже понял что хочу слишком многого.



Страницы: 1 вся ветка

Текущий архив: 2007.03.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.045 c
3-1167036805
tytus
2006-12-25 11:53
2007.03.18
10g Express edition & DOA 4.0.7 - проблема с коннектом.


2-1172401882
Name
2007-02-25 14:11
2007.03.18
преобразовывать символы в буквы


15-1171798982
Чапаев
2007-02-18 14:43
2007.03.18
что для вас иконка в трее (там где часы)?


15-1170999818
MBo
2007-02-09 08:43
2007.03.18
Пятничные задачки. Вася Пупкин потрясает интеллектом...


2-1172582601
vigo_
2007-02-27 16:23
2007.03.18
Изменение данных файла