
package jdom;

import javax.xml.parsers.*;
import javax.xml.transform.*;
import org.w3c.dom.*;


public class Jdom {

    public Document chargerDocumentXML(String fileName){
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        try{
            DocumentBuilder db = dbFactory.newDocumentBuilder();
            return db.parse(fileName);
        }
        catch(Exception e){
            System.out.print("ERREUR : ");
            e.printStackTrace();
            return null;
        }
    }

    public void afficherEtudiants(Document listeEtudiants){
        NodeList mesEtudiants = listeEtudiants.getElementsByTagName("etudiant");
        for(int i = 0 ; i<mesEtudiants.getLength() ; i++){
            Element e = (Element)(mesEtudiants.item(i));
            System.out.print("nom = "+e.getAttribute("nom")+" ; ");
            System.out.println("prenom = "+e.getAttribute("prenom"));
        }
    }

    public void modifierEtudiant(Element etudiant, String newNom, String newPrenom){
        etudiant.setAttribute("nom", newNom);
        etudiant.setAttribute("prenom", newPrenom);
    }
    
    public void ajouterEtudiant(Document listeEtudiants, String newNom, String newPrenom){
        Element e = listeEtudiants.createElement("etudiant");
        e.setAttribute("nom", newNom);
        e.setAttribute("prenom", newPrenom);
        listeEtudiants.getFirstChild().appendChild(e);        
    }






    public static void main(String[] args) throws TransformerConfigurationException, TransformerException {
        Jdom jdom = new Jdom();
        Document doc = jdom.chargerDocumentXML("etudiants.xml");
        jdom.ajouterEtudiant(doc, "TYGREAT", "Thomas");
        Element e = (Element)(doc.getFirstChild());
        System.out.println(e.getNodeName());
        jdom.afficherEtudiants(doc);
    }

}
