Так что я пытаюсь получить XML от arraylist. Моя программа работает, как и ожидалось, за исключением того, что результирующий XML находится в одной строке, элемент за элементом, вместо обычного формата XML. Вот мой код:
</p>
<code>public static void obtenirClientsXml(ArrayList<Client> llistaClients){
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.newDocument();
Element eRoot = doc.createElement("llista_clients");
doc.appendChild(eRoot);
// recorremos el array list
Iterator<Client> i = llistaClients.iterator();
while (i.hasNext()){
Client c = i.next();
Element eClient = doc.createElement("client");
eRoot.appendChild(eClient);
Element eNom = doc.createElement("nom");
eNom.appendChild(doc.createTextNode(c.getNom()));
eClient.appendChild(eNom);
Element eCognom = doc.createElement("cognom");
eCognom.appendChild(doc.createTextNode(c.getCognoms()));
eClient.appendChild(eCognom);
}
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult("C:/RentalClot/Clients/clients.xml");
transformer.transform(source, result);
} catch (Exception e){
e.printStackTrace();
}
}
</code>
есть идеи?