![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте.
Я работаю с xml, точнее, загружаю сайт html и кусок кода вставляю в xmldocument, вроде все хорошо, но, если встречается в тегах просто текст, то выдает ошибку, что это значение не текстовое (теги примерные): Код HTML:
Вопрос, как можно взять текст блока div? |
|
#2
|
||||
|
||||
|
Pos, PosEx.
|
|
#3
|
|||
|
|||
|
Цитата:
дело в том, что у меня таких div около сотни в одном блоке, например, divs. поэтому pos не катит |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
||||
|
||||
|
Код:
type
TForm1 = class(TForm)
XMLDocument1: TXMLDocument;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
...
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Lines.Clear;
XMLDocument1.XML.Text:='<?xml version="1.0" encoding="windows-1251"?><divs><div><name>Вася</name>Пупкин</div><div><name>Гена</name>Букин</div></divs>';
XMLDocument1.Active:=True;
Memo1.Lines.Add('DocumentElement = '+XMLDocument1.DocumentElement.NodeName);
Memo1.Lines.Add('Count = '+IntToStr(XMLDocument1.DocumentElement.ChildNodes.Count));
Memo1.Lines.Add('ChildNodes0 = '+XMLDocument1.DocumentElement.ChildNodes.Get(0).NodeName);
Memo1.Lines.Add(' '+XMLDocument1.DocumentElement.ChildNodes.Get(0).ChildNodes.Get(0).NodeValue);
Memo1.Lines.Add(' '+XMLDocument1.DocumentElement.ChildNodes.Get(0).ChildNodes.Get(1).NodeValue);
Memo1.Lines.Add('ChildNodes1 = '+XMLDocument1.DocumentElement.ChildNodes.Get(1).NodeName);
Memo1.Lines.Add(' '+XMLDocument1.DocumentElement.ChildNodes.Get(1).ChildNodes.Get(0).NodeValue);
Memo1.Lines.Add(' '+XMLDocument1.DocumentElement.ChildNodes.Get(1).ChildNodes.Get(1).NodeValue);
end; |