Schreiben einer XML

Tomas

Bekanntes Mitglied
hallo,

ich schreibe in eine XML, dass funktioniert auch schon ganz gut...nur habe ich das Problem, dass ich meine Elemente nicht in eine neue Zeile hänge.

Der Code:
Code:
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;

// so hänge ich die elmente rein

Element element= document.createElement("Node");
		node.setAttribute("i:type", typeNode.name());
parentElement.appendChild(node)

--------------------------------------------------

// schreibt raus
Source source = new DOMSource(document);
		// output file
		File file = new File(filePath);
		Result result = new StreamResult(file);
		// write the dom document to file
		Transformer xformer = null;
		try {
			xformer = TransformerFactory.newInstance().newTransformer();
			xformer.transform(source, result);
		} catch (TransformerException e) {
			e.printStackTrace();
		}

Ich dachte, es würde mit appendChild funktionieren doch es gibt mir eine riesen lange Wurst aus....

Wie kann ich nach jedes element in eine neue zeile reingeben, sodass ich die typische xml form habe

<xxx>...
<yyy>...
<zzz>...</zzz>
</yyy>
</xxx>

Danke!
 

Noctarius

Top Contributor
Das hat doch mit JAXB nichts zu tun, er kann (wie im Link) auch beim Transformer PrettyPrint aktivieren. Sowas sollte aber eben nur für Debugzwecke an sein.
 

donnac

Mitglied
hi,
meine Frage passt ganz gut zum Titel, daher poste ich sie mal hier:
ich habe eine GUI entwickelt, in die u.a. Daten, ähnlich Adressdaten, eingegeben werden können (in Tabellen angezeigt).
Diese möchte ich nun speichern, aufgrund der Struktur der Daten würde sich XML vermutlich gut dazu eignen. Leider kenne ich mich mit XML so gut wie gar nicht aus. JAXB habe ich schon gefunden, finde die Erklärungen dazu allerdings recht komplex, zumal alle Welt irgendwie davon auszugehen scheint, dass man zuerst die Daten/Klassen(?) in XML-Form hat, das ist bei mir allerdings nicht der Fall ist.
Mit
Java:
JAXB.marshal(src, System.out);
erhalte ich schon ein ganz nettes Beispiel:

Java:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<source>
    <connectState>0</connectState>
    <host>local</host>
    <name>heidi</name>
    <port>12345</port>
    <streamIdentifier>pumbeidi</streamIdentifier>
    <height>56.0</height>
    <powerControl>0</powerControl>
</source>

Allerdings wird nicht alles ausgegeben.
Und zwar enthält der Datentyp mehrere Variablen und darunter auch eine ArrayList<anderer Datentyp>, wobei der Inhalt der ArrayList nicht ausgegeben wird.
Es sollte eigentlich noch etwas in der Art
Java:
<attributeList>
<element><name>bla<\name><type>SPEED<\type><\element>
<element><name>blub<\name><type>POWER<\type><\element>
</attributeList>
auftauchen.
ich vermute, dass ich noch irgendetwas konfigurieren muss, bzw. JAXB mitteilen, dass da diese Liste ist, die mit zu parsen ist. Sämtliche Klassen (auch von dem Datentyp der ArrayList), die ich verwende haben public getter, daran liegt es also nicht, zumal ich auch keine Fehlermeldung bekomme.

Ich möchte nichts großartiges damit machen, es soll einfach die bisherige Usereingabe in eine XML-Datei geparst werden und beim Laden wieder eingelesen. Die JAXB Dokumentation finde ich nur für den Zweck etwas zu umfangreich :rtfm: :eek: . Falls also jemand von euch sagt "na, das ist doch ganz einfach, du musst da nur dfhfkshkhdf = ndkdkfn() angeben" dann wäre ich schon überglücklich. :toll:
 

donnac

Mitglied
Das sieht übersichtlich aus, Danke! :) Das werde ich mir mal durchlesen.

Inzwischen habe ich auch festgestellt, warum meine Daten nicht "marshaled" wurden: sie waren einfach nicht da. Ich habe die Liste zwar dynamisch erstellt, aber nicht immer hinzugefügt (je nach dem, wie man sich durch die GUI klickte, wurde sie dem anderen Objekt hinzugefügt oder nicht, und bisher war mir das nicht aufgefallen (da sie in der resultierenden Tabelle sowieso nicht angezeigt werden). *dank an xml, obwohl es nichts damit zu tun hat*
Also, wie immer: die größte Gefahr sitzt *hinter* der Tastatur! :oops:
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J xmlencoder Zustände einer Bean schreiben XML & JSON 3
D Int-Werte in XML-Datei schreiben (DOM) XML & JSON 2
W XPath schreiben XML & JSON 1
N Java XML schreiben funktioniert nicht XML & JSON 1
L Mit Hilfe von POI eine Tabelle ohne Rahmen in Word schreiben XML & JSON 2
J XML als stream schreiben? XML & JSON 2
M JAXB: automatisches Groß schreiben Property XML & JSON 9
L Datenstruktur in XML-File schreiben XML & JSON 2
G DXF-File schreiben XML & JSON 17
P Komfortabel XML Dokumente schreiben und lesen XML & JSON 6
Maxim6394 Lesen/Schreiben von XML Datei XML & JSON 9
B Validierung nur beim einlesen oder auch beim schreiben? XML & JSON 4
S XML lesen und schreiben XML & JSON 2
C DOM: Attribute nicht in alphabetischer Reihenfolge schreiben XML & JSON 3
J wert IN einem tag einlesen/schreiben XML & JSON 4
K JAXB: Klassen mit Annotation Lesen/Schreiben XML XML & JSON 3
K '&' in xml schreiben XML & JSON 2
G Problem beim schreiben von XML in eine File XML & JSON 2
sylo DOM Document in XML Datei schreiben XML & JSON 5
B eigentlich einfach nur XML schreiben XML & JSON 3
L Objekt Serialisierung: Schreiben aller Attribute erzwingen XML & JSON 5
A JDOM: Wert schreiben bzw. ändern XML & JSON 6
M DOM, Werte mit setAttribute in XML schreiben XML & JSON 3
B XML einlesen und in Datenbank schreiben XML & JSON 1
D Tabs/Einrückungen der XML-Elemente gehen beim Schreiben verloren XML & JSON 5
J XML lesen schreiben XML & JSON 7
T Xml lesen und in .txt zeilenweise schreiben XML & JSON 4
J XML - schreiben und einlesen (Schema) XML & JSON 14
L Einfaches XML Lesen und Schreiben XML & JSON 4
O OpenDocument-Tabelle mit Java lesen und schreiben XML & JSON 3
G Wie Attribute aus XML in ein Model schreiben (StAX)? XML & JSON 7
K XML-schreiben aus ResultSet dauert zu lange XML & JSON 10
G Mit JAXP in eine Datei schreiben XML & JSON 2
R XML-Datei schreiben - InstantiationException XML & JSON 2
Z DOM: Attribute in Knoten schreiben XML & JSON 2
S XMl Dateien in Java schreiben XML & JSON 4
W Erzeugen einer openapi spec via swagger XML & JSON 1
W Erzeugen einer Handlerklasse zum Abfangen von SOAP-Requests XML & JSON 13
D Innerhalb einer Property auf eine andere verlinken? XML & JSON 3
J Auslesen der Länge einer XML-Datei in Android Studio XML & JSON 8
S Validierung einer XML-Datei - Führende Leerzeichen und Tabs XML & JSON 10
M Layout + Inhalt einer JTable speichern XML & JSON 30
J Welche Gründe führen zu einer endlos tiefen XML? XML & JSON 4
T Pfad in einer Variablen speichern XML & JSON 1
E Wie kann ich ein XSD-Schema in einer JSP-Seite verwenden? XML & JSON 7
T Visualisierung von XML Dateien in einer Java SwingGui XML & JSON 11
R XSD in einer choice mehrmals das selbe element möglich XML & JSON 5
S Xml File für den Aufbau einer anderen Xml Datei XML & JSON 6
C XPath: Alle Kinder in einer Schleife auslesen XML & JSON 2
K Beim Parsen einer XML-Datei Connection timed out XML & JSON 4
F Parsen von Daten aus einer Homepage XML & JSON 6
B XML aus einer URL im Internet lesen (JDOM) XML & JSON 4
D Aus lesen einer XML-Datei ( 1 root, 3 childs) XML & JSON 7
B SAX-Parser - Dokumente einlesen und in einer Map ablegen XML & JSON 2
B 2 Attribute in einer xsl XML & JSON 2
T Inhalt einer .xml Datei auf Javaoberfläche wiedergeben XML & JSON 4
B XML auf Basis einer DTD erstellen XML & JSON 2
hdi Probleme beim Erstellen einer XML XML & JSON 7
O Parsen einer XML mit JDOM ohne Doctype Declaration XML & JSON 2
T XPath Problem: finden einer Node nach Attributswert XML & JSON 2
sylo Mehrere XSDs und mehrere Namensräume in einer XML unterbringen? XML & JSON 2
Nicer Bestimmten Wert aus einer XML Auslesen XML & JSON 34
sylo Beim Erzeugen einer XML Datei auch die XML Struktur erzeugen? XML & JSON 11
N value Wert einer XML Datei mit JAVA bearbeiten XML & JSON 21
S Probleme beim erstellen einer Jar XML & JSON 12
J Problem mit compile einer XSD XML & JSON 3
S Einlesen einer xml Datei XML & JSON 4
F hilfe bei einer aufgabe XML & JSON 3
D Anzahl der Knoten in einer XML XML & JSON 6
R Parsen einer XML ohne Validierung XML & JSON 2
D XML Datei innerhalb einer JAR Datei parsen XML & JSON 2
M Xerces -Parsen mit einer externen Schemadatei geht nicht XML & JSON 2
cybermat Ergebnis einer XSLT-Tansformation als Rückgabewert erhalten XML & JSON 4
J Fehler beim laden einer .xml XML & JSON 3
ven000m Übungsaufgabe: Valide und gültige XML Datei zu einer DTD XML & JSON 7
A Auslesen einer XML Datei XML & JSON 58
P OutOfMemoryError beim Einlesen einer XML-Datei XML & JSON 7
P Knoten-Attribute einer xsd-Datei in einem JTree auslesen XML & JSON 18
T Einfach nur die Elemente einer XML Datei auslesen :( XML & JSON 10
Z Erzeugung einer Referenz von Knoten in JTree auf DOMTree XML & JSON 3
A Element an einer bestimmten Stelle einfügen (nicht am Ende) XML & JSON 4

Ähnliche Java Themen

Neue Themen


Oben