2010-06-30 6 views

Répondre

7

Xerces est un analyseur DOM. C'est l'implémentation d'Apache en Java ou en C++.

Les deux que vous voulez penser sont SAX et DOM. DOM crée une arborescence d'objets en mémoire; SAX ne le fait pas. Vous pouvez manipuler l'arborescence d'objets après l'analyse du DOM; SAX utilise un modèle d'événement pour traiter XML à la volée.

Soit SAX ou DOM fonctionnera. Votre choix est généralement basé sur le fait que vous le gardez en mémoire pour le manipuler ou le traiter en place. Si le flux XML est gigaoctets, vous ne pourrez peut-être pas tout stocker en même temps. Dans ce cas, SAX est un bon choix car vous pouvez l'utiliser à la volée tout en analysant.

Google est votre ami: lancez-le pour en savoir plus sur DOM4J et JDOM.

Je recommanderais JDOM si vous écrivez Java. Il prend soin de beaucoup de choses coolplate.

+0

Ajouter également des analyseurs de pilules, par ex. dom4j et jdom – Mark

+0

hey, pouvez-vous me donner quelques liens utiles. – Manu

+0

et quel analyseur est le mieux à utiliser. – Manu

3

Il existe deux façons d'analyser un fichier xml dans Xerces.viz SAX & DOM. Analyseur SAX:

  1. Modèle basé sur les événements.
  2. Accès série (flux d'événements).
  3. Faible utilisation de la mémoire (seuls les événements sont générés).
  4. Pour traiter des parties du document (capture d'événements pertinents).
  5. Pour traiter le document une seule fois.
  6. La navigation vers l'arrière n'est pas possible car elle traite le document de manière séquentielle.
  7. Des objets doivent être créés.

DOM Parser:

  1. (base Object) structure de données d'arbre.
  2. Accès aléatoire (structure de données en mémoire).
  3. Utilisation élevée de la mémoire (le document est chargé en mémoire).
  4. Pour modifier le document (traitement de la structure de données en mémoire).
  5. Pour traiter plusieurs fois (document chargé en mémoire).
  6. Facilité de navigation.
  7. Stocké comme objets.