![]() |
Парсинг XML в массив объектов
Задача распарсить xml типа
<objects> <object>свойства объекта</object> <object>свойства объекта</object> ....... </objects> В массиа объектов определенного класса. Оснавная сложность состоит в том что бы пробежаться в цикле по всем <object>. PS. Поиск по форуму юзал. Варианты использовать XML не переводя в объекты отпадает. Создать свой класс на основе XML тоже не получается(как бы не хотелось, но flex говорит что это финальный класс и детей не даст сделать=) ) |
Так а в чем собственно проблема, парсите данный файл, и получает либо XML либо XMLList(с чем Вам удобнее работать) и дальше просто динамически создаете нужные вам классы, передавая значения из XML в конструктор вашего класса.
XMLList дает возможность прохода по массиву object |
а не могли бы привести пример конкретного обращения к iтой строке <object>.
|
Может быть вариант такой: myXMLCol.elements()[i] myXMLCol - это объект типа XMLList. Так же посмотрите методы этого класса child и attribute, добавляют гибкости в работе с XML.
Так же можете посмотреть как работать с классом SimpleXMLDecoder, в него передается XMLDocument, а этот класс возращает тип Object, а далее зная структуру XML файла, можно обращаться к его свойствам, которые будут в такой же иерархии как и в файле. |
Код:
var myXML:XML = <objects> |
Как я понимаю SimpleXMLDecoder, ArrayCollection, XML.childrens() только во Flex доступны? Не могу найти их в справке по Flash.
|
XML.childrens() -> XML.children()
Остальные два из mx пакета, но их, как и любой другой пакет можно использовать во Флеше, вопрос только в нужности этих классов... |
| Часовой пояс GMT +4, время: 04:57. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.