# Lässt sich folgendes so oder so ähnlich mit Java und XML umsetzen



## lukpro (30. Aug 2017)

Also Hallo erstmal.
Ich habe für ein Schulprojekt ein Vokabel-Abfrage Programm programmiert. Die umsetzung...naja selbst ich, als,  in der Programmierung nicht stark Fortgeschrittener erkenne, dass sie sehr primitiv ist, so wie sie ist. Im moment funktioniert das folgendermasen:
Es gibt 4 .txt Datein. In einer ist das Wort in Fremdsprache und in den restlichen 3 die Übersetzungen. Vokabel und Übersetzung sind in ihren jeweiligen Datein alle in der selben Zeile. Nun wird die Anzahl der Beschriebenen Zeilen geprüft und eine Zufallszahl zwischen 1 und der geprüften Zahl generiert. Nun werden die Zeilen, die diese Zufällige Zahl haben (also die xte Zeile) ausgelesen und in Strings gespeichert. Die Vokabel wird (in der Konsole angezeigt) und man soll die Übersetzung eintippen. Nun wird so:

```
if (input.conatains(bedeutung1) || input.contains(bedeutung2) || input.contains(bedeutung3)) {}
```
 überprüft, ob die Eingabe richtig ist (Dabei sind bedeutung1, bedeutung2 und bedeutung3 3 der Strings, die aus den 4 Dateien ausgelesen wurden und input eben die Eingabe).

Ich habe noch nie etwas mit XML gemacht und bräuchte daher auch Code-Hilfe.
So nun meine Frage: lässt sich das mit XML so oder so ähnlich verbessern, dass ich in einer XML-Datei ein Element habe, dass eine Vokabel an sich ist, das Attribut "unit" hat und mindestens 2 weitere Elemente beinhaltet, nämlich einmal Das Wort in Fremdsprache und mindestens eine übersetzung. Das stelle ich mir in etwa so vor:

```
<?xml version="1.0"?>
<vokabeln>
   <vokabel unit="1">
       <wort>hello</wort>
       <bedeutung>Hallo</bedeutung>
       <bedeutung>Guten Tag</bedeutung>
   </vokabel>
   <vokabel unit="1">
       <wort>room</wort>
       <bedeutung>Raum</bedeutung>
       <bedeutung>Zimmer</bedeutung>
       <bedeutung>Saal</bedeutung>
   </vokabel>
   <vokabel unit="2">
       <wort>yellow</wort>
       <bedeutung>gelb</bedeutung>
   </vokabel>
</vokabeln>
```
Nun soll man units auswählen können, aus welchen Vokabeln abgefragt werden können.
Dann sucht sich das Programm eine zufällige Vokabel mit gültiger unit aus, zeigt das Wort in Fremdsprache an (also das Element mit dem Tag <wort>), man Tippt die Übersetzung ein und das Programm prüft, ob die Eingabe mindestens eine der Bedeutungen beinhaltet.
Und zuletzt noch eine Sache:
Sollte man das oben genannte so oder so ähnlich programmieren können, wäre es dann auch möglich ein Programm zu machen, mit dem man die Vokabeln eingeben kann und die Eingabe dann zum XML Dokument hinzugefügt wird.
Ich hoffe ich habe alles verständlich erklärt.
mfG lukpro


----------



## Flown (30. Aug 2017)

Klar lässt sich sowas umsetzen, erstelle die erforderlichen Klassen, die dir das managen (wie: Unit, Vokabel). Das kannst du dann auch mit (weiterführendes Thema) JAXB de-/serialisieren.


----------



## lukpro (30. Aug 2017)

lukpro hat gesagt.:


> Ich habe noch nie etwas mit XML gemacht und bräuchte daher auch Code-Hilfe.


wie gesagt ich habe mit XML noch nie gearbeitet und bräuchte mehr Infos, wie man das umsetzt.


----------



## looparda (30. Aug 2017)

@lukpro welche Tutorials/Literatur hast du dir zu JAXB bereits angeschaut? Wo hakt es?


----------

