# String in Byte[] und zurück



## Matze82 (19. Februar 2008)

Hallo,

habe ein Problem mit der Konvertierung.
Und zwar habe ich ein Byte[] welches ein Dokument darstellt.
Dieses verpacke ich über einen String und sende es über einen WebService.
Auf der anderen Seite möchte ich natürlich aus dem String wieder ein Byte[] machen.
Nur wie


----------



## zerix (19. Februar 2008)

Hallo,


```
String.getBytes(),
```

MFG

Sascha


----------



## Matze82 (19. Februar 2008)

Das funktioniert eben nicht....
zum verständnis:

```
DataHandler dh1 = new DataHandler(new FileDataSource("C:/TestFile.pdf"));		
		ByteArrayOutputStream buffOS1= new ByteArrayOutputStream();
		dh1.writeTo(buffOS1);
		byte[] buff1 = buffOS1.toByteArray();
		buffOS1.close();
		
		StringBuffer buffer1 = new StringBuffer();
		for(int i = 0; i<buff1.length; i++){
			Byte mybyte = new Byte(buff1[i]);			
			buffer1.append(mybyte.byteValue()); 
		}
```

Somit schreibe ich mein ByteArray als String, sende das an den Webservice und auf der Seite möchte ich wieder ein ByteArray haben (das selbe wie ich reingegeben habe).
Wenn ich aber vom String getBytes mache, bekomme ich doch was anderes zurück...


----------



## Anime-Otaku (19. Februar 2008)

Du solltest bei getBytes auch den Charset als Parameter mitgeben, ansonsten wird der Charset des Betriebssystems genommen, was je nachdem zum Problem werden kann...gerade wenn es zwischen Windows und Linux ist. Beim String Konstruktor natürlich noch zusätzlich zu den bytes auch den Charset mit angeben.

näheres siehe String Api


----------



## zeja (19. Februar 2008)

Warum sendest du die bytes nicht direkt?


----------



## Matze82 (19. Februar 2008)

wenn mir jemand verrät wie, dann würde ich das gerne machen, denn bisher hat es nie funktioniert.
Ich möchte mehrere Dokumente sende, habe als Datentypen ein Array HexBinary und ein Array Base64Binary probiert oder wie muss ich das anstellen?


----------



## zeja (19. Februar 2008)

Wie sieht denn deine Methode zum senden Momentan aus?


----------



## Matze82 (19. Februar 2008)

Ok, nach ewigem hin und her basteln läuft es nun,bin ja fast verzweifelt.
Nehme ein Array von HexBinary Werten, diese werden dann in eine DB vom WebService gesteckt. Alles t jetzt so wie ich es wollte. 
Wer mehr Informationen will, muss nochmal schreiben...

Trotzdem danke für die Mühen


----------

