2010-06-30 2 views

ответ

7

Xerces является a DOM парсер. Это реализация Apache в Java или C++.

Два, о которых вы хотите подумать, - SAX и DOM. DOM создает дерево объектов в памяти; SAX - нет. Вы можете манипулировать деревом объектов после выполнения разбора DOM; SAX использует модель события для обработки XML на лету.

Либо SAX, либо DOM будут работать. Ваш выбор обычно зависит от того, сохраните ли вы его в памяти, чтобы манипулировать им или обработать его на месте. Если поток XML представляет собой гигабайт, возможно, вы не сможете его сразу сохранить. В этом случае SAX - хороший выбор, потому что вы можете работать с ним на ходу, когда вы разбираете.

Google - ваш друг: запустите его, чтобы узнать о DOM4J и JDOM.

Я бы порекомендовал JDOM, если вы пишете Java. Он заботится о большом количестве компонентов шаблонов.

+0

Также добавить парсера для пейджеров, например. dom4j и jdom – Mark

+0

эй, можете ли вы дать мне полезные ссылки. – Manu

+0

, и какой парсер лучше всего использовать. – Manu

3

Существует два способа анализа XML-файла в Xerces.viz SAX & DOM. SAX Parser:

  1. Event based model.
  2. Последовательный доступ (поток событий).
  3. Низкое использование памяти (генерируются только события).
  4. Для обработки частей документа (улавливание соответствующих событий).
  5. Обработать документ только один раз.
  6. Обратная навигация невозможна, поскольку она последовательно обрабатывает документ.
  7. Объекты должны быть созданы.

DOM Parser:

  1. (Объект на основе) структуры данных дерева.
  2. Произвольный доступ (структура данных в памяти).
  3. Высокое использование памяти (документ загружается в память).
  4. Редактирование документа (обработка структуры данных в памяти).
  5. Обработать несколько раз (документ загружен в память).
  6. Простота навигации.
  7. Хранится как объект.
Смежные вопросы