Daten aus SqLite Datenbank in XML konvertieren

  • 4 Antworten
  • Letztes Antwortdatum
C

christoph10

Neues Mitglied
0
Hallo zusammen,

ich bin gerade damit beschäftigt, meine erste App zu schreiben und möchte, dass dem späteren Nutzer die Möglichkeit eröffnet wird, Projekte, die er innerhalb der App erstellt hat, zu versenden.
Dazu wollte ich die Daten aus der Datenbank nehmen und diese in XML-Files umwandeln. Ich habe zu der Thematik auch schon ausführlich gegoogelt...aber ohne Erfolg.
Hat vielleicht irgenjemand eine Idee oder einen Ansatz, wie ich mein Problem lösen kann?

Viele Grüße
christoph10
 
Naja du überlegst dir, wie du dein XML File aufbauen willst.
Z.B. eine Gästeliste:
Man könnte dann sagen:
Code:
<liste>
<gast>
<name>Max Mustermann</name>
<adresse>...</adresse>
</gast>
<gast>
<name>...</name>
<adresse></adresse>
</gast>
</liste>

In diesem Beispiel wäre jeder Gast eine ZEILE in deiner SQLLite Tabele und jedes item darin (name, adresse...) eine Spalte.

Dann gehts ans erstellen von XML Dateien in Java:
Dieses Tutorial beispielsw.

Das File kannst du dann an den anderen verschicken und dort wie eine ganz normale XML Datei einlesen:
Lesen des oben erstellten XML-Files

Gruß
 
Vielen Dank für deine Hilfe. Das werde ich jetzt gleich mal probieren.

Gruß
 
Ich habe jetzt deine (blackfire185) vorgeschlagene Lösung in mein Projekt übertragen und das funktioniert auch soweit. Da das Projekt aber relativ umfangreich wird, ist es doch aber eleganter, wenn ich am Ende der jeweiligen Projektklassen per String toXML mir die Daten gleich in XML umwandle. Das habe ich (beispielsweise) folgendermaßen realisiert:

public String toXML(Context context) {
DBManager.init(context);
List<Node> nodes = DBManager.getInstance().getAllNodesOfProject(this);
String res = "<project>" +
"<id>" + id + "</id> +" +
"<author>" + author + "</author>" +
"<name>" + name + "</name>" +
"<creation>" + creationDate + "</creation>" +
"<alteration>" + alterationDate + "</alteration>";
for (Node node : nodes) {
res += node.toXML();
}
res += "</project>";
return res;
}

Nun würde ich aber gerne wissen, wie ich am besten eine Klasse zum "Auslesen" der XML-Daten anlege. Ich hatte mir das so vorgestellt, dass ich eine zentrale Klasse habe, in der ich alle XML sammeln kann, um diese im Anschluss weiter zu leiten.
Kann mir da jemand weiterhelfen?

Viele Grüße
christoph
 
Zurück
Oben Unten