Название: Надо сохранить некую сеть в XML Отправлено: Гурман от Июль 26, 2011, 20:21 Есть некая сеть объектов, которые неким образом связаны друг с другом (связи находятся в специальном реестре, и представляют собой информацию о соединениях сигнал-слот между ку-объектами). Изображения объектов накиданы на ку-графическую сцену, и там же соединения представлены айтемами-линиями. Нужно все это хозяйство уметь сохранять в XML и загружать обратно. То есть, надо для каждого объекта сохранить примерно следующее:
Код: имя объекта1 1-ая проблема - с XML я пока в Qt не работал, примерно представляю, что это, но практики создания и чтения XML документов никакой, только правил настройки некоторых систем в этом формате 2-я проблема - не знаю, где лучше изучить, как работать с этим в Qt, несколько страниц в Шлее я прочел, в принципе, по ним можно уже что-то слепить, но по опыту знаю, что если лепить по Шлее, то получится не эффективно, при должном понимании можно сделать лучше поэтому вопросы - где лучше всего прочитать про использование XML в Qt? - стоит ли связываться с DOM? такая ли она прожорливая, как пишет Шлее? оправдано ли её использование, и будет ли она сильно пожирать память, если реальные схему будут иметь всего несколько десятков айтемов? замечу, что в другой части проектра рисуется сцена, на которой сотни тысяч айтемов - и ничего, ну 20 мегабайт она занимает, это не смертельно, но если я сделаю простейший код (типа того, что у Шлее), и он выльется в мегабайты бинарника, и для десятка айтемов будет требовать десяток мегабайт RAM, то ну его нафик - или лучше сделать на SAX? но по шлее не понятно, есть ли простой способ создавать XML документы, кроме как с помощью DOM в общем, знатокам этого дела, просьба по описанной выше задаче наставить меня на путь истинный, чтобы я потратил минимум времени на изучение и реализацию, ибо оно дорого, желательно все сделать с нуля за 1 день - по Шлее видно, что с DOM быстрее получится, но я понятия не имею, насколько оно будет эффективно в моем случае Название: Re: Надо сохранить некую сеть в XML Отправлено: Странник от Июль 26, 2011, 20:54 SAX хорош для обработки потоковых данных или больших XML-документов. для своей задачи можете использовать DOM с чистой совестью. для изучения посмотрите документацию и примеры, этого вполне достаточно.
Название: Re: Надо сохранить некую сеть в XML Отправлено: Гурман от Июль 27, 2011, 00:06 да, сохранение сети получилось с полпинка, всего 44 строки, с загрузкой немного сложнее, завтра сделаю
Название: Re: Надо сохранить некую сеть в XML Отправлено: Fregloin от Август 08, 2011, 08:58 я храню нечто подобное тоже в XML с помощью DOM (после tinyxml очень легко освоить нежели SAX), на сцене порядка тысячи итемов, и связываю их по id (при загрузке хиширую, потом по id связываю указатели друг на друга) - памяти особо не жрет, работает на удивление быстро.
|