Функция Diff Flex - PullRequest
       2

Функция Diff Flex

2 голосов
/ 02 июня 2011

Я ищу способ сравнить два XML-файла (старый и новый) и скопировать в массив все узлы, которые присутствуют в новой версии, но не в старой версии. Я думаю, что для каждого узла в новом XML-файле должно быть относительно просто выполнить итерацию старого XML-файла и посмотреть, найден ли он ... однако я не думаю, что это эффективное решение для больших XML-файлов (< 10к узлов). Мне интересно, есть ли лучшее решение - алгоритмическое или функциональное во Flex - для решения этой задачи.

Спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 02 июня 2011

Я бы посмотрел на алгоритмы, которые используют инструменты слияния SVN, и использовал один из них в необработанном тексте, создал бы XML из различий и только проанализировал его.

0 голосов
/ 02 июня 2011

Джексон Данстан недавно проверил производительность XML и обнаружил, что она действительно медленная, даже для доступа.Альтернативами являются вложенные объекты или словари, содержащие данные XML - но вы должны создать их из XML после его анализа, и это не оправдано для одного прохода.Или разберись сам - но я не уверен, насколько быстрее это будет, даже с Алхимией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...