Ik ben op zoek naar een methode om vanuit java naar XML te schrijven.
Het volgende heb ik geprobeerd:
Dit genereerd een element ("testElement") in de xml file. Echter probeerde ik dit ook te doen voor attributen
Eventueel wil ik ook wel een andere methode gebruiken als dat wel werkt. Ik kom er iig niet uit.
Het volgende heb ik geprobeerd:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document docu = db.parse("c:/example.xml"); XPath xpath = XPathFactory.newInstance().newXPath(); XPathExpression xpathExpression = xpath.compile("/workouts/distance[@lenght='5 km snel']/week[@number='3']/day[@number='11']"); Node node = (Node) xpathExpression.evaluate(docu, XPathConstants.NODE); node.appendChild(docu.createElement("testElement")); ByteArrayOutputStream baos = new ByteArrayOutputStream(); DOMSource source = new DOMSource(docu); StreamResult result = new StreamResult(baos); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); transformer.transform(source, result); PrintWriter out = new PrintWriter(new FileOutputStream("c:/example.xml")); out.println(baos.toString()); out.flush(); out.close(); |
Dit genereerd een element ("testElement") in de xml file. Echter probeerde ik dit ook te doen voor attributen
Java:
maar dit werkte niet.1
| node.appendChild(docu.createAttribute("testElement")); |
Eventueel wil ik ook wel een andere methode gebruiken als dat wel werkt. Ik kom er iig niet uit.