Comment obtenir la valeur de l'élément de XML en utilisant SAX parser en startElement?

Est-il possible d'obtenir le contenu d'un élément à partir d'un fichier XML dans startElement fonction qui est la fonction override de la SAX gestionnaire?

Ci-dessous le cahier des charges.

1) fichier XML

<employees>
   <employee id="111">
      <firstName>Rakesh</firstName>
      <lastName>Mishra</lastName>
      <location>Bangalore</location>
   </employee>
   <employee id="112">
      <firstName>John</firstName>
      <lastName>Davis</lastName>
      <location>Chennai</location>
   </employee>
   <employee id="113">
      <firstName>Rajesh</firstName>
      <lastName>Sharma</lastName>
      <location>Pune</location>
   </employee>
</employees>

2) startElement fonction

@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    .......code in here..........
}

3) résultat Attendu

element name   : employee
attribute name : id
attribute value: 111
firstName      : Rakesh
lastName       : Mishra
location       : Bangalore

element name   : employee
attribute name : id
attribute value: 112
firstName      : John
lastName       : Davis
location       : Chennai

element name   : employee
attribute name : id
attribute value: 113
firstName      : Rajesh
lastName       : Sharma
location       : Pune
mkyong.com/java/how-to-read-xml-file-in-java-sax-parser
je vous remercie. J'ai déjà vérifier celui-ci. Si je dis que je veux qu'écrire du code dans startElement fonction, est-il possible?
Vous obtenez seulement les attributs de startElement. Toutes les valeurs de texte que vous obtenez dans caractères. Vous devez utiliser startElement pour détecter lorsqu'un élément a commencé. A l'intérieur vous pouvez définir des indicateurs qui vous permet de vérifier dans le caractères de la méthode. Savoir qui est l'élément actif à l'intérieur de caractères, vous pouvez obtenir sa valeur. Vous devez n'oubliez pas de réinitialiser les drapeaux dans endElement.
À l'aide de startElement() et l'autre méthode est la seule façon que vous accédez à des données en XML. je ne pense pas qu'il est possible d'écrire chaque chose en startElement. Analyseur SAX est différent de celui de DOM, car il ne prend pas en charge complète XML en mémoire et de lecture de document xml de manière séquentielle. startElement() : Chaque fois qu'un analyseur SAX obtient une balise d'ouverture " <", il appelle startElement(). endElement(): Chaque fois qu'un analyseur SAX obtient une balise de fermeture " >", il appelle endElement(). personnage(): Chaque fois qu'un analyseur SAX devient une simple chaîne de caractères, il appelle de caractères() la méthode et le xml selon le code écrit en startElement().
je vous remercie pour votre facile de comprendre le concept. que diriez-vous cette option? Je veux un jeu de tag, attName, attValue, et de l'étiquette de valeur. La raison pour laquelle je pose cette question car j'ai besoin de l'utiliser dans un autre thread.

OriginalL'auteur sakura | 2014-06-09