# File Encoding im Programm setzen?



## Stefan1200 (19. Feb 2005)

Bezüglich Probleme das bei Netzwerk Transfer Umlaute in Strings nicht mehr lesbar sind, wenn verschiedene Betriebsysteme verwendet werden, habe ich den Tipp bekommen, das Java Programm mit dem Befehl


> java -Dfile.encoding=UTF8 -jar XYZ.jar


zustarten. Funktioniert auch wunderbar.

Gibt es aber auch eine Möglichkeit den file encoding im Java Programm zu ändern?

Ich habe zwar schon folgendes probiert:

```
System.setProperty("file.encoding","UTF8");
```
Aber es funktioniert leider nicht.

Oder gibt es eine Möglichkeit in der Manifest Datei von der Jar den file encoding festzulegen?
Bin für jede Hilfe oder Idee dankbar.


----------



## Stefan1200 (23. Feb 2005)

Hat echt keiner eine Idee?


----------



## Bleiglanz (23. Feb 2005)

gehts jetzt um NetzwerkTransfer ODER Dateien auf der Platte????????????????????

lies die java.io.* und java.net.* API, dann wirst du finden, dass du oft das encoding für einen Reader/Writer einstellen kannst

InputStreamReader(InputStream in, String charsetName)
          Create an InputStreamReader that uses the named charset.

alternativ kannst du auch mit binärströmen arbeiten und das ganze dann in einen String verwandeln:

String(byte[] bytes, int offset, int length, String charsetName)
          Constructs a new String by decoding the specified subarray of bytes using the specified charset.


----------



## Stefan1200 (26. Feb 2005)

Hmm, muss ich irgendwie übersehen haben in der Api.
Scheint auch zu klappen, danke Bleiglanz.


----------

