Правильно ли отступать Element.toXML () вместо отображения результирующей строки в виде одной строки? - PullRequest
1 голос
/ 12 декабря 2011

Поведение по умолчанию Element.toXML() показывает результат в виде одной строки.Возможно ли, чтобы он отображал результат в несколько строк иерархическим способом?

Пример:

Это то, что я хотел бы получить

<root>
    <Fraction hash="108e898f" />
    <Integer hash="19498483" />
</root>

и вот что я получаю в данный момент:

<root><Fraction hash="108e898f" /><Integer hash="19498483" /></root>

Спасибо

Ответы [ 2 ]

2 голосов
/ 12 декабря 2011

nu.xom.Serializer именно то, что вам нужно.Вот пример использования пример :

public static void main(String[] args) {
    Element root = new Element("root");  
    Element fraction = new Element("Fraction");
    fraction.addAttribute(new Attribute("hash", "108e898f"));
    root.appendChild(fraction);
    Element integer = new Element("Integer");
    integer.addAttribute(new Attribute("hash", "19498483"));
    root.appendChild(integer);
    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); 
    }  
}
1 голос
/ 12 декабря 2011

Похоже, вы хотите красивую распечатку. Сделать это с Xom должно быть легко, попробуйте этот предыдущий ответ , это может быть полезно.

...