# XML String erstellen



## Happyman0815 (25. Jul 2009)

Hallo Leute!

Ich steh etwas unter Zeitdruck und muss eine Funktion basteln, die mir ein XML String aus Variablen schreibt.


Ich habe eine Funktion:


```
public void buildXml(byte[] outBuffer,
                        double X1,double Y1,double Z1, double A1,double B1,double C1,
                        double X2,double Y2,double Z2, double A2,double B2,double C2,
                        int init1, int init2, String msg)
	

{
//Hier soll der XML String erstellt werden
}
```


Die XML soll später folgende Form haben:


```
<my_XML>
      <Datensatz1 X="1.345300" Y="3.456300" Z="4.232321" A="7.232421" B="9.234515" C="9.384575" />
      <Datensatz2 X="1.345300" Y="3.453300" Z="4.132321" A="4.232421" B="3.234515" C="4.384575" />
      <Init init1="45" init2="94" />
      <Message>Hallo dies ist ein Test</Message>
</my_XML>
```

Die Werte sind Beispielwerte. 
Datensatz1 soll die Werte X1, Y1, Z1, A1, B1, C1 bekommen und
Datensatz2 die Werte X2, Y2, Z2, A2, B2, C2.

init1 natürlich den Wert des Übergabeparameters init1 
init2 natürlich den Wert des Übergabeparameters init2

Die Message ist im Übergabeparameter msg enthalten.

Der ganze XML String soll dann im Byte-Array "outBuffer" abgelegt werden.


Natürlich schickt es sich nicht jemanden zu fragen ob er das kurz erledigen könnte aber schnelle zielführende Tipps sind sehr sehr gerne willkommen ;(

Gruß
Happyman0815


----------



## mvitz (25. Jul 2009)

Wo ist das Problem?


```
String xml = "<my_xml>..." + x1 + "...";
outBuffer = xml.getBytes();
```

Edit: Zeilenumbrüche können über \n in den String eingefügt werden, Tabs per \t


----------



## Happyman0815 (25. Jul 2009)

habi55 hat gesagt.:


> Wo ist das Problem?
> 
> 
> ```
> ...



Hmm ja so könnte man das wohl auch machen. Wäre das aber nicht eine "quick & dirty" Lösung?

Gruß
Happyman0815


----------



## mvitz (25. Jul 2009)

Evtl. kann man das als Quick & Dirty bezeichnen, aber da finde ich die Übergabe von so vielen Parametern schlimmer.

Diese sollte man evtl. in zwei Klassen zusammenfassen.

Die XML-Erstellung kann man dann natürlich mit DOM oder JAXB realisieren, dass kommt dann aber wieder auf deinen Context an.

Edit: Zumal "Datensatz1" und "Datensatz2" als Elemente auch sehr unüblich ist...


----------



## Happyman0815 (26. Jul 2009)

Ich hab das jetzt einfach so gemacht wie du es gesagt hat. Da sich der zu sendene String eh in der Struktur nie ändert, kann man diese Methode wohl mit dem Wort "Performancegewinn" verkaufen ;D


Ich hab jetzt nochmal einen XML String der decodiert werden soll, also "geparst" werden soll. Dazu erstell ich aber mal nen neues Thema....

Gruß
Hapyyman0815


----------

