Manipular XML en java con XOM

He encontrado esta librería  XOM  para manipular XML en Java, y a verdad es que es muy sencillo y útil. A continuación un ejemplo de código:

import nu.xom.*;

public class HelloWorld {

  public static void main(String[] args) {

    Element root = new Element("root");
    root.appendChild("Hello World!");
    Document doc = new Document(root);
    String result = doc.toXML();
    System.out.println(result);

  }

}

Tiene como resultado

<?xml version="1.0"?>
<root>Hello World!</root>

Y si se quiere un Xml más complejo formateado, indicando la codificación.

import nu.xom.*;

import java.io.IOException;
import java.math.BigInteger;

public class PrettyFibonacci {

  public static void main(String[] args) {

    BigInteger low  = BigInteger.ONE;
    BigInteger high = BigInteger.ONE;

    Element root = new Element("Fibonacci_Numbers");
    for (int i = 1; i <= 10; i++) {
        Element fibonacci = new Element("fibonacci");
        fibonacci.appendChild(low.toString());
        root.appendChild(fibonacci);

        BigInteger temp = high;
        high = high.add(low);
        low = temp;
    }
    Document doc = new Document(root);

    try {
      Serializer serializer = new Serializer(System.out, "ISO-8859-1");
      serializer.setIndent(4);
      serializer.setMaxLength(64);
      serializer.write(doc);
    }
    catch (IOException ex) {
       System.err.println(ex);
    }

  }

}

Con el siguiente resultado:

<?xml version="1.0" encoding="ISO-8859-1"?>
<Fibonacci_Numbers>
     <fibonacci>1</fibonacci>
     <fibonacci>1</fibonacci>
     <fibonacci>2</fibonacci>
     <fibonacci>5</fibonacci>
     <fibonacci>8</fibonacci>
     <fibonacci>13</fibonacci>
     <fibonacci>21</fibonacci>
     <fibonacci>34</fibonacci>
     <fibonacci>55</fibonacci>
</Fibonacci_Numbers>

Me despido esperando que le sirva a alguien para algo.

Esta entrada fue publicada en Java. Guarda el enlace permanente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *