Java xml

Résolu/Fermé
mizamiza - 7 sept. 2011 à 20:30
 mizamiza - 7 sept. 2011 à 22:00
Bonjour,
je parse ce fichier avec java :
<?xml version="1.0" encoding="UTF-8"?>
<bests>
<best>
<nom>miza</nom>
<score>100</score>
</best>
<best>
<nom>maryem</nom>
<score>100</score>
</best>
</bests>
il se bloque à cette ligne de code :
Element racine = document.getRootElement();
l'erreur c'est "Root element not set"
qq1 peur m'aider? merci d'avance

A voir également:

1 réponse

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
7 sept. 2011 à 20:42
Comment te dire où est l'erreur sans avoir ton code ?
Il faudrait au minimum que l'on sache ce qu'est document, et comment il est initialisé vu que c'est lui qui provoque ton erreur...
0
public List lireBests()
{
//On crée une instance de SAXBuilder
SAXBuilder sxb = new SAXBuilder();
org.jdom.Document document = new Document();
try
{
//On crée un nouveau document JDOM avec en argument le fichier XML
//Le parsing est terminé ;)
document = sxb.build(new File("bests.xml"));
}
catch(Exception e){}

//On initialise un nouvel élément racine avec l'élément racine du document.
Element racine = document.getRootElement();
return(list);
}
0
ce meme code marche dans un autre projet mais dans ce projet !!
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
7 sept. 2011 à 20:56
Que dit-il avec ceci ?
Remarque ton return (list), je l'ai remplacé aussi mais je sais pas si c'est getContent() que tu veux...

public List lireBests()
{
	try 
	{
		SAXBuilder sxb = new SAXBuilder();
		Document document = sxb.build(new File("bests.xml"));
		Element racine = document.getRootElement();
		return racine.getContent(); // ???
	} 
	catch (Exception e)
	{
		e.printStackTrace();
		return null;
	} 
}
0
merci KX ça m'a inspiré en fait mon code est correct j'ai juste oublié la ligne "List list = racine.getChildren()" l'erreur c'est que il fallait mettre le fichier XML dossier bin de mon projet

ce code donc est fonctionnel et retourne le contenu de mon fichier sous la forme d'une liste pour la parser il faut se servir d'un iterator

public List lireBests()
{
//On crée une instance de SAXBuilder
SAXBuilder sxb = new SAXBuilder();
org.jdom.Document document = new Document();
try
{
//On crée un nouveau document JDOM avec en argument le fichier XML
//Le parsing est terminé ;)
document = sxb.build(new File("bests.xml"));
}
catch(Exception e){}

//On initialise un nouvel élément racine avec l'élément racine du document.
Element racine = document.getRootElement();
List list = racine.getChildren();
return(list);
}
0