Вниз
Скачать: CL | DM;

XML разбор   Найти похожие ветки 

← →
StarCon   (2002-07-17 12:27) [0]

Используется компонент дельфи6 XMLDocument
делаю перебор нодов, вывожу результат:
Memo1.Lines.Add(XML.ChildNodes[i].NodeName)
вот результат:
document
#text
form_101050100005
#text
page_101050100005
#text
rnn
#text
#text
что за "#text"? как от этого избавиться?
если использую
Memo1.Lines.Add(XML.ChildNodes[i].Text)
чтобы посмотреть значение нода, то опять лажа:
значения идут с символами след.строки (причем по нескольку штук)

Все что мне надо - это сделать разбор ХМЛ и получить список нодов и их значений. Может быть есть у кого подходящий пример или посоветуете какие-нибудь компоненты нормальные использовать?


← →
a.verichev   (2002-07-17 13:23) [1]

все эти #text это служебные ноды (так сказать - структура xml такая). дабы получить значение ноды, надо проверить, а имеет ли оно child (что то вроде hasChilds)... если не имеет, то брать что надо (имя, значение).


← →
StarCon   (2002-07-17 14:37) [2]

if not AChilds[i].HasChildNodes
then Memo1.Lines.Add(AChilds[i].Text)
else Memo1.Lines.Add(AChilds[i].NodeName);
вроде работает, а что делать с символами перевода строки?
неужели придется вырезать с помощью COPY?




← →
Сатир   (2002-07-17 16:47) [3]

есть разные типы нодов и нужно проверять их тип перед тем как приступать к дальнейшей обработке (в основном, это извлечение аттрибутов и текста), поэтому нужно проверять тып ноды.
с родным дельфийским парсером я не работал, но предполагаю, что у его парсера должно быть публичное свойство типа NodeType



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-95333
Iren
2002-07-18 07:52
2002.07.29
Функция MessageDlg


3-95201
alexvan
2002-07-06 14:36
2002.07.29
Как в DBGrid значение в поле


7-95581
Сергей__
2002-05-14 08:55
2002.07.29
Как добавить свою команду в Проводник?


1-95354
Leny
2002-07-18 11:21
2002.07.29
Строки в таблице


1-95426
malamba
2002-07-16 09:28
2002.07.29
новый класс на базе чекбокса




   Наверх