Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2008, 16:23   #1
Ozerich
Студент 1 курса
Форумчанин Подтвердите свой е-майл
 
Аватар для Ozerich
 
Регистрация: 27.06.2008
Сообщений: 959
По умолчанию Проход по дереву.

Вот такие у меня структуры.
Код:

TXmlNode=Class
  Property Items:TXmlNodes read FNodes;
  Property Name:string read FName write Fname;
  Property Value:string read FValue write FValue;
End;

TXmlNodes=class
  property Count:integer read FCount;
  Property Items[index:integer]:TXMLNode read GetNode;
end;

TXMLParser=class
    Property Nodes:TXMLNodes read FNodes;
end;
Все данные уже заполнены.
Подскажите как сделать проход по дереву и получить все name и value.
Или может как лучше эти структуры сделать
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
Ozerich вне форума Ответить с цитированием
Старый 05.10.2008, 17:33   #2
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Например, для вывода на консоль:

Код:
procedure TXMLNode.ViewNode(level:integer);
begin
   Writeln(' ':level*3, Name, ' = ', Value);
   Items.ViewNodes(level+1);
end;

procedure TXMLNodes.ViewNodes(level:integer);
var i:integer;
begin
   for i := 0 to Count - 1 do begin
      Items[i].ViewNode(level);
   end;
end;

procedure TXMLParser.ViewTree;
begin
   FNodes.ViewNodes(0);
end;
Вместо Level можно передавать TStringList (например) и записывать узлы в него.
alexBlack вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TreeView и PageControl (переключение вкладок по дереву) Nevy Общие вопросы C/C++ 5 17.08.2008 19:17
Сортирование масивов за один проход NightWishMaster Паскаль, Turbo Pascal, PascalABC.NET 10 18.10.2007 08:05
Повторный проход по записям в TIBQuery novicer Компоненты Delphi 0 19.06.2007 18:58