Сохранение дерева

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
Лелик_1044
Сообщения: 340
Зарегистрирован: 22 ноя 2004, 19:15
Откуда: Минск
Контактная информация:

Помогите с алгоритом сохранения
Есть дерево содержащее Н вложенностей и М 0 уровней
Надо сохранить
----------------------------
| Parent_ID | Child_ID |
----------------------------

Где каждый child_id будет ссылаться на своего paent_id
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

В цикл для каждого уровня и подуровня и пишешь построчно в файл, потом так же читаешь... Ну это самое простое...
Лелик_1044
Сообщения: 340
Зарегистрирован: 22 ноя 2004, 19:15
Откуда: Минск
Контактная информация:

Duncon,
Мне тож так сперва казалось, сейчас сижу думаю
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.
Аватара пользователя
LAngel
Сообщения: 277
Зарегистрирован: 30 мар 2005, 08:19
Откуда: Ульяновск
Контактная информация:

обычная рекурсия, ещё со школы ;)

Код: Выделить всё

Procedure SaveNode(Node: TNodeClass);
var
  i: Integer;
begin
  SaveToFile(Node.Id, Node.Parent.Id);
  for i := 0 to Node.Childs.Count-1 do SaveNode(Node.Child[i]);
end;
С уважением, Lost Angel...
Ответить