Wie kann ich aus einer XML Datei die ausgelesenen Werte in Java Objekte speichern?

2 Antworten

Ja natürlich.

Lege dir erst einmal Klassen an, die die Objekte beschreiben sollen.

Ein Beispiel:

Das XML

<car>
  <brand>Wartburg</brand>
  <color>red</color>
</car>

Die Klasse

class Car {
  private String brand;
  private String color;

  public void setBrand(String brand) {
    this.brand = brand;
  }

  public void setColor(String color) {
    this.color = color;
  }

  // getters, etc. ...
}

Nun kannst du einzelne Objekte der Klasse anlegen und die Werte, die du mittels JDOM ausliest, hineinschreiben.

// parse ...
Element node = // get current xml element ...

Car car = new Car();
car.setBrand(node.getChildText("brand"));
car.setColor(node.getChildText("color"));

Die Klasse muss zur Laufzeit bekannt sein. Dann kannst Du Objekte erzeugen und diese mit Werten füllen.

Woher ich das weiß:
Berufserfahrung

Wie funktioniert Xml Verschlüsselung/Entschlüsselung?

Hallo, ich habe ein Programm, in welches man Xml Dateien einlessen/laden kann, verändern und wieder in einer neuen Datei abspeichern kann. Ich würde gerne den Text, der in der Textbox angezeigt wird, beim speichern verschlüsselen und beim öffnen wieder entschlüsseln. Ich habe auf msdn etwas gefunden, nur leider bekomme ich dann überall Fehler, obwohl ich es genau so nachmache. Meine Frage an euch, wie verschlüssele ich den Text in einer Textbox beim speichern in der Xml Datei, also soll z.B. im Programm in der Textbox Passwort "passwort" stehen und beim abspeichern, wenn man dann die Xml-Datei öffnet, sowas in der Art drin stehen:

<Passwort>dsa454jsa@dsajhad5jkaj2jkd4</Passwort>

anstatt:

<Passwort>passwort</Passwort>
...zur Frage

Java Umlaute Problem?

Hallo,

ich versuche Umlaute in eine Datei zu schreiben:

    FileWriter fww= new FileWriter("C://KBs//test2.xml");
    BufferedWriter bww=new BufferedWriter(fww);
    bww.write("Datenübertragung");
    bww.close();
    
    FileWriter fw= new FileWriter("C://KBs//test3.xml");
    BufferedWriter bw=new BufferedWriter(fw);
    bw.write("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>");
    bw.write(umlauteUmformen(umlauteErsetzen("Datenübertragung")));
    bw.close();
   }

Beim oberen geht es, beim unteren, wegen dem UTF-8 encoding nicht. Ich versuch das seit 2 Tagen irgendwie in den Griff zu bekommen, jedoch ohne Erfolg.

Ich habe bereits folgende Methoden geschrieben und es damit versucht, auch erfolglos: 

public String umlauteErsetzen(String s) {

 s=s.replaceAll("ö", "\u00f6").replaceAll("Ö", "\u00d6") .replaceAll("ä", "\u00e4").replaceAll("Ä", "\u00c4").replaceAll("ü", "\u00fc") .replaceAll("Ü", "\u00dc").replaceAll("ß", "\u00df");

 return s; 

}

Und: 

public String umlauteUmformen(String s) { 

byte ptext[] = s.getBytes(ISO_8859_1); 

String value = new String(ptext, UTF_8); 

return value;

}

Die XMLs sind vorgegeben, das UTF-8 encoding im XML kann nicht geändert werden. Ich bitte um Hilfe -_- LG

...zur Frage

XML Datei aus dem Browser ziehen und speichern via JavaScript AJAX

Also ich will aus meinem Browser eine API/XML Datei ziehen und speichern. Ich habe schon viel probiert mit JavaScript bzw. AJAX, aber das ganze haut nicht ganz so hin. Vielen Dank im Voraus schon mal.

...zur Frage

java - Objekte voneinander differenzieren

Hallo ihr lieben!

Kurz und knackig:

wenn ich eine Methode wiederholt aufrufen möchte und in dieser ein Objekt erstellen möchte, wie gebe ich diesem einen Namen? Bzw wie kann ich diese Objekte im Nachhinein gezielt aufrufen?

...zur Frage

Was möchtest Du wissen?