![]() |
|
#1
|
||||
|
||||
![]() Приветствую, в XML не силен, нужно спарсить данные с файла сигнатур, набросал код с использование компонента SimpleXML, но выдает не все данные и с множеством пустых строк:
Код:
Код HTML:
|
#2
|
|||
|
|||
![]() Вот через стандатрный TXMLDocument:
Код:
ЗЫ. Твой xml не правильный. 1. Он не закрыт (ну тут подозреваю, что ты просто скопировал только кусок. 2. Символ '<' недопустим внутри значения. Заменить на '<' 3. Ну и тире убрать перед тегами mime-type (как я понял, это ты просто отметил типа корневые). Последний раз редактировалось lmikle, 07.04.2019 в 19:01. |
#3
|
||||
|
||||
![]() Да, ты все правильно понял, насчет кода, проверю, отпишусь, пока накидал собственный парсер
|
#4
|
|||
|
|||
![]() Дык эта, я ж на твоем примере и проверил.
Всего вывел 5 строк. |
#5
|
||||
|
||||
![]() Вот такие заморочки там встречаются, пытаюсь победить "offset", "type", "value":
Код HTML:
Код:
|
#6
|
|||
|
|||
![]() Угу, не работает. Потому что у не того тега смотришь
![]() Нужно: Код:
|
#7
|
||||
|
||||
![]() Спасибо, выручил
Код:
|
#8
|
|||
|
|||
![]() Вообще, если xml большой, то рекомендую сделать временную переменную, что бы на каждой итерации не "разрешать" колбасу вида
rootNode.ChildNodes[i].ChildNodes[J] Быстрее работать будет. Но это для реально больших файлов. Ну а для очень больших уже придется искать SAX парсер. Там по другому надо код строить немного. |
#9
|
||||
|
||||
![]() ок, принял, спасибо
|