Ca depend de ton document XML et le fait qu'on ne voit pas le resultat ca ne veut pas dire qu'il n'y en a pas
Test ce code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| package tmp;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
public class Demo {
public static void main(String[] args) {
String fName = "book.xml";
SAXBuilder builder = new SAXBuilder();
Document document = null;
Element root = null;
FileReader reader = null;
try {
reader = new FileReader(fName);
document = builder.build(reader);
root = document.getRootElement();
System.out.println(root.getText());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (Exception e) {
}
}
}
} |
sur le fichier suivant book.xml :
1 2 3 4 5 6 7 8 9 10 11
| <?xml version="1.0"?>
<books>
<book>
<title>Java</title>
<pages>534</pages>
</book>
<book>
<title>Python</title>
<pages>567</pages>
</book>
</books> |
sur la console tu vas pas avoir un resultat visuel. Mais remplace le code
System.out.println(root.getText());
par
System.out.println(root.getText().length());
et tu verras qu'on a une chaine de caracteres de longeur 5
Si tu changes le contenu du fichier book.xml par :
1 2 3 4 5 6 7 8 9 10 11 12
| <?xml version="1.0"?>
<books>
Un peu de text
<book>
<title>Java</title>
<pages>534</pages>
</book>
<book>
<title>Python</title>
<pages>567</pages>
</book>
</books> |
Tu vas bien avoir ton text. Peut-etre dans ce cas il sera mieux utiliser :
System.out.println(root.getTextTrim());
Voila j'espere que cela va t'aider.
A+
Partager