omni xml, есть ли простой текущий пример для чтения XML-файла? - PullRequest
3 голосов
/ 24 августа 2011

В поисках удобочитаемого примера использования пакета Omni Xml.

документация теперь содержит 2 примера: для загрузки и записи, ничего о чтении или повторении.

не могли бы вы предоставить простое чтениеXML, пример одного повторяемого свойства

, такого как

<root>
<value p1=1></value>
<value p1=2 p2='32432'/>
<value p1=3 p3='fdsf'><other></other></value>
</root>

, как перебрать все значения и получить свойство p1.

1 Ответ

6 голосов
/ 24 августа 2011
uses
  OmniXML,
  OmniXMLUtils;

var
  node : IXMLNode;
  other: IXMLNode;
  xml  : IXMLDocument;
begin
  xml := CreateXMLDoc;
  if XMLLoadFromFile(xml, 'fname.xml') then begin // 3 more notes
    for node in XMLEnumNodes(xml,'/root/value') do begin
      Writeln(GetNodeAttrStr(node, 'p1', ''), ';', GetNodeAttrStr(node, 'p2', ''), ';', 
        GetNodeAttrStr(node, 'p3', ''));
      other := SelectNode(node, 'other');
    end;
  end;
end;

Предупреждение: не проверено, записано в браузере.

...