nounouuuuu2010
Messages postés18Date d'inscriptionsamedi 2 janvier 2010StatutMembreDernière intervention 7 décembre 2011
-
14 oct. 2011 à 18:46
nounouuuuu2010
Messages postés18Date d'inscriptionsamedi 2 janvier 2010StatutMembreDernière intervention 7 décembre 2011
-
16 oct. 2011 à 10:46
Bonsoir,
je suis en train de parser un fichier xml et mettre le contenu dans un fichier texte.
nodes = doc.getElementsByTagName("title");
Node node = doc.getDocumentElement();
......
for (int i = 0; i < nodes.getLength(); i++) {
element = (Element) nodes.item(i);
System.out.println("Description: " + readNode(element, "description"));
FileWriter myFile = new FileWriter("fichier"+i,true);
myFile.write(readNode(element, "description").toString());
myFile.close();
mon problème se présente comme ceci: le fichier est créé mais reste vide.
voici la methode readNode():
/**
* Méthode permettant de retourner ce que contient un noeud
* @param _node le noeud principal
* @param _path suite des noms des noeuds sans espace séparés par des "|"
* @return un string contenant la valeur du noeud voulu
*/
public String readNode(Node _node, String _path) {
String[] paths = _path.split("\\|");
Node node = null;
if (paths != null && paths.length > 0) {
node = _node;
for (int i = 0; i < paths.length; i++) {
node = getChildByName(node, paths[i].trim());
}
}
if (node != null) {
return node.getTextContent();
} else {
return "";
}
}
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 14 oct. 2011 à 21:22
Bonjour,
Une seule possibilité : _node est null, dans ce cas, ta tonction retrourne "". Lances le programme en mode debug ou fait des sysout pour voir ce qui se passe exactement.
Cette ligne ne sert à rien if (paths != null && paths.length > 0), dans tous les cas, paths contiendra au moins un élément et si _path est null, une exception sera levée avant.