You should call osr.flush() for the xml elements to be seen on the System.out or any Writer that is used.
-Gurdev
Ken Beesley wrote:
Beginner Question: .write() method for Elements
I just downloaded DOM4J and got it working. I can read XML files and prettyPrint them, no problem.
But I'm having some trouble getting the .write() method to work for Elements. I did check a year of archives, but couldn't find anything.
The Quick start guide says
"A quick and easy way to write a Document (or any Node) to a Writer is via the write() method. FileWriter out = new FileWriter("foo.xml") ; document.write(out);"
OK. But when I try something similar, passing a good pointer to Document to the following method, using .selectNodes() to collect <data> elements (there are five of them in the document), and then using .write() to write them, I get no output.
Could some kind soul tell this beginner what he's doing wrong?
static public void printData(Document document) throws UnsupportedEncodingException, IOException {
List list = document.selectNodes("//data") ; // collect <data> elements
System.out.println("Length of list is: " + list.size()) ; System.out.flush() ; // this prints out '5'
OutputStreamWriter osr = new OutputStreamWriter(System.out) ;
Element e ; Iterator i = list.iterator(); while ( i.hasNext() ) { e = (Element)i.next() ; e.write(osr) ; // no output } } }
The above produces no output, whereas the following works perfectly, printing out the five elements.
static public void printData(Document document) throws UnsupportedEncodingException, IOException {
List list = document.selectNodes("//data") ;
Iterator i = list.iterator(); while ( i.hasNext() ) { System.out.println(((Element)i.next()).asXML()) ; } } }
Thanks in advance,
Ken
**********************************************************************
Kenneth R. Beesley [EMAIL PROTECTED] Xerox Research Centre Europe Tel from France: 04 76 61 50 64
6, chemin de Maupertuis Tel from Abroad: +33 4 76 61 50 64
38240 MEYLAN Fax from France: 04 76 61 50 99
France Fax from Abroad: +33 4 76 61 50 99
XRCE page: http://www.xrce.xerox.com Personal page: http://www.xrce.xerox.com/people/beesley/beesley.html **********************************************************************
------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ dom4j-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dom4j-user
------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ dom4j-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dom4j-user
