Извините, я понимаю, что английский, вероятно, не ваш родной язык, поскольку документ размещен в домене .ru, но этот вопрос не имеет никакого смысла. Не могли бы вы отредактировать его и предоставить более подробную информацию о том, что именно вы ищете? Mason Wheeler 14.02.2012
Публикация большей части вашего вопроса по ссылке за пределами сайта означает, что он становится бессмысленным, если этот другой сайт становится недоступным или исчезает. Пожалуйста, отредактируйте свой вопрос, предоставив здесь хотя бы часть XML-документа, чтобы ваш вопрос оставался полезным для других в будущем и был доступен для поиска. Пока вы редактируете эту часть, вы можете предоставить дополнительную информацию о том, что вы пытаетесь сделать и что вы пробовали до сих пор, и объяснить, почему это не сработало, как ожидалось. Спасибо. :0 Ken White 14.02.2012
dredei Я пытался показать вам, что имеет в виду Кен, надеюсь, мое редактирование поможет? Вы все равно должны расширить свой вопрос, чтобы сказать, что вы пробовали. Вы даже пробовали MSXML DOM или OmniXML, или вы просто пытались анализировать без парсера XML? Warren P 15.02.2012
@ Уоррен, вы только что убрали все стимулы для автора вернуться и отредактировать вопрос. (Вы сделали то же самое, что выполнили чье-то домашнее задание, а затем посоветовали ему прочитать книгу после этого.) Ken White 15.02.2012
обновил первый пост и поменял ссылку :) dedoki 15.02.2012
@dredei: не меняйте ссылку. Разместите здесь фрагмент XML, как мы просили несколько раз. Опять же, ссылки вне сайта не подходят - здесь ваш вопрос должен стоять сам по себе. Ken White 15.02.2012
uses ComObj, MSXML;
procedure TForm1.Button1Click(Sender: TObject);
var
xml: IXMLDOMDocument;
node: IXMLDomNode;
nodes_row, nodes_se: IXMLDomNodeList;
i, j: Integer;
url: string;
begin
// put url or file name
url := 'http://softez.pp.ua/gg.xml';
xml := CreateOleObject('Microsoft.XMLDOM') as IXMLDOMDocument;
xml.async := False;
xml.load(url); // or use loadXML to load XML document using a supplied string
if xml.parseError.errorCode <> 0 then
raise Exception.Create('XML Load error:' + xml.parseError.reason);
Memo1.Clear;
nodes_row := xml.selectNodes('/doc/data/row');
for i := 0 to nodes_row.length - 1 do
begin
node := nodes_row.item[i];
Memo1.Lines.Add('phrase=' + node.selectSingleNode('phrase').text);
nodes_se := node.selectNodes('search_engines/search_engine/se_url');
for j := 0 to nodes_se.length - 1 do
begin
node := nodes_se.item[j];
Memo1.Lines.Add('url=' + node.text);
end;
Memo1.Lines.Add('--------------');
end;
end;