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

Вниз

Indexator   Найти похожие ветки 

 
SkyP   (2004-07-20 10:28) [0]

Как в Дельфе можно реализовать
такую структуру:

 str:=SomeObject.Values["Alex"].Values["Fox"];
 str2:=SomeObject.Values["Alex"];

... и т.д.
знаюч что можно через THashedStringList организовать
но проблема с построением 2,3 -его и т.д уровня
просто непонимаю
так как возвращаться всегда должно строку в свойстве

подскажите, ясно что нужно писать класс


 
Digitman ©   (2004-07-20 10:34) [1]


> ясно что нужно писать класс


зачем его писать-то ?
бери на вооружение любой XML-движок, например, XMLDOMDocument - он все это реализует


 
SkyP   (2004-07-20 10:37) [2]

гм ...
кстати, суть и сводилась что б читать все из XML :)

спасибо за идею !!!

подумаю что получиться из этого


 
Digitman ©   (2004-07-20 10:47) [3]


> SkyP


можешь еще "пощупать" TJvSimpleXML из состава JEDI-пакета, он - с исх.текстами и , imho, поудобней с т.з. интуитивно понятного интерфейса


 
Digitman ©   (2004-07-20 10:56) [4]

пример использования сервера XMLDOMDocument

пример оперирует источником данных в XML-формате для получения значений узлов, дочерних по отн-ю к узлу APPLICATION_DATA\FAHRZEUG в нижеслед. струтуре

<?xml version="1.0"?>
<APPLICATION_DATA>
<HEADER/>
 <AUFTRAG>
  <AUFTRAGSNUMMER/>
  <KUNDENNUMMER/>
  <KUNDENKURZNAME/>
  <KUNDENDIENSTBERATER/>
 </AUFTRAG>
 <FAHRZEUG>
  <FAHRZEUGIDENTNR/>
  <MODELLJAHR/>
  <MARKE/>
  <FAHRZEUGKLASSE/>
  <KAROSSERIE/>
  <AUSSTATTUNG/>
  <AGGREGAT/>
  <MKB/>
  <GKB/>
  <AKB/>
  <AMTLKENNZEICHEN/>
</FAHRZEUG>
</APPLICATION_DATA>

function TElsaWin.Get_VehicleIdentification: TVehicleInfo;
var
 XMLDOMDocument: IXMLDOMDocument2;
 VehicleIdNode: IXMLDOMNode;
begin
 try
   XMLDOMDocument := CoDomDocument.Create;
   try
     Connected := True;
     with XMLDOMDocument do
     begin
       LoadXML(FElsaWinApp.Data);
       VehicleIdNode := SelectSingleNode("APPLICATION_DATA").SelectSingleNode("FAHRZEUG");
       with VehicleIdNode, Result do
       try
         ModelYear     := SelectSingleNode("MODELLJAHR").Text;
         SalesModel    := SelectSingleNode("MARKE").Text;
         ClassId       := SelectSingleNode("FAHRZEUGKLASSE").Text;
         CarosSerieId  := SelectSingleNode("KAROSSERIE").Text ;
         ASNo          := SelectSingleNode("AUSSTATTUNG").Text;
         PowerUnitId   := SelectSingleNode("AGGREGAT").Text;
         EngineId      := SelectSingleNode("MKB").Text;
         GearId        := SelectSingleNode("GKB").Text;
       finally
         VehicleIdNode := nil;
       end;
     end;
   finally
     XMLDOMDocument := nil;
   end;
 except
   raise EElsaWinError.Create(4);
 end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.06 c
1-1089970612
DeMoN_Astra
2004-07-16 13:36
2004.08.01
Работа с меню


1-1089909244
kiki
2004-07-15 20:34
2004.08.01
Как обработать комбинацию клавишь?


1-1089886356
Виталя
2004-07-15 14:12
2004.08.01
Отчет в Word в отдельном потоке Thread


14-1089396182
panov
2004-07-09 22:03
2004.08.01
Ура! Вот он - долгожданный отпуск!


1-1090354319
Kotka
2004-07-21 00:11
2004.08.01
Неуловимый exception