Pass an indent string and whether or not to add newlines to the
XMLSerializer
constructor.
import org.jdom.*;
import org.jdom.output.XMLOutputter;
import java.math.BigInteger;
import java.io.*;
public class PrettyFibonacciJDOM {
public static void main(String[] args) {
Element root = new Element("Fibonacci_Numbers");
BigInteger low = BigInteger.ONE;
BigInteger high = BigInteger.ONE;
for (int i = 1; i <= 25; i++) {
Element fibonacci = new Element("fibonacci");
Attribute index = new Attribute("index", String.valueOf(i));
fibonacci.setAttribute(index);
fibonacci.setText(low.toString());
root.addContent(fibonacci);
BigInteger temp = high;
high = high.add(low);
low = temp;
}
Document doc = new Document(root);
// serialize it into a file
try {
FileOutputStream out
= new FileOutputStream("pretty_fibonacci_jdom.xml");
XMLOutputter serializer = new XMLOutputter(" ", true);
serializer.output(doc, out);
out.flush();
out.close();
}
catch (IOException e) {
System.err.println(e);
}
}
}