[jdom-interest] Writing a list of currentElements using
XMLOutputter
Grzegorz Kaczor
grzegorz.kaczor at gmail.com
Tue May 22 14:01:46 PDT 2007
Hi Jeff,
but in the code you create a new file for each currentElement so it isbehaving correctly.
You can write:(...)writer.newLine();writer.write("<title name ='words' />");writer.newLine();for (...) { ... wait for user click ... outputter.output...}writer.write("</word_list>");
Perhaps you will have to flush the writer too if you want to see theresults immediately after each iteration.
However if you have to have a correct XML file after each loopiteration I am afraid you will have to parse, modify and output theXML file again after each click. XML is not designed to support"appending" to the end. In such a situation I would suggest to createa simple text file, append to it and convert it to an XML documentafterwards.
Grzegorz
On 22/05/07, Jeff Garza <jeff.garza at gmail.com> wrote:> I'm trying to write a list of elements to a .txt file using XMLOutputter and> I'm stumped. I set my program up to retrieve the currentElement> [currentElement = (Element)listIterator.next();] every time the user clicks> a button. Then they are asked if they want to write the currentElement to> the .txt file and what should happen is that each time the user clicks yes,> the currentElement should be written one after the other to the file like> so:>> <word_list>> <title name ="words" />> <entry word = "currentword1" >> <def>currentdef1</def>> </entry>> <entry word = "currentword2" >> <def>currentdef2</def>> </entry>> <entry word = "currentword3" >> <def>currentdef3</def>> </entry>> </word_list>>> However, what happens is the next element always replaces the one before it> and I end up with a .txt file that has only one element:>> <word_list>> <title name ="words" />> <entry word = "currentword3" >> <def>currentdef3</def>> </entry>> </word_list>>> Here is my code:>> try {> BufferedWriter writer = new> BufferedWriter (> new OutputStreamWriter (> new FileOutputStream> (" words.txt"),> "UTF-8"));> Format format => Format.getPrettyFormat();> format.setEncoding("UTF-8");> XMLOutputter outputter = new> XMLOutputter(format);> writer.write("<word_list>");> writer.newLine();> writer.write("<title name ='words' />");> writer.newLine();> outputter.output(currentElement, writer);> writer.newLine();> writer.write("</word_list>");> writer.flush();> writer.close();> }> catch (IOException io) {}>> I'm not sure what to do and I'd appreciate your help. Thanks!> _______________________________________________> To control your jdom-interest membership:> http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com>
-- "Choć tyle wiemy własnym doświadczeniem:W nas jest Raj, Piekło - i do obu - szlaki."J.K.
More information about the jdom-interest
mailing list