# Zeichenkodierung beim Einlesen - Umlaute nicht kodiert



## janw (15. November 2006)

Hallo,

ich hab mal eine Frage zu einem Gebiet, in dem ich mich nicht wirklich gut auskenne:
Ich lese in Java eine Datei ein, in der die Sonderzeichen nicht speziell kodiert sind.
Also eine Datei, in die ich unter Windows Umlaute "direkt" über die Tastatur eingegeben.

Von welcher Kodierung spricht man dann bzw. welchen Zeichensatz erwarte ich?
Ist es dann der ANSI-Zeichensatz? Oder ISO-Latin-1?
Soweit ich weiß, enthalten beide Zeichensätze deutsche Umlaute.

Das Einlesen selbst geschieht unter Linux.


```
BufferedReader in = new BufferedReader(new FileReader(file));
String line;
while((line = in.readLine()) != null){
  ...
```
Gruß
Jan


----------



## janw (15. November 2006)

hab nochmal nachgelesen, ich erwarte anscheinend den "ISO-8859-1 Latin-1" Zeichensatz.
Da das Einlesen unter Linux ja funktioniert, unterstützt Linux (Suse 9.0) diesen Zeichensatz anscheinend?

Jan


----------



## Anime-Otaku (15. November 2006)

Linux unterstützt, je nach Einstellung, Zeichensätze bis UTF-8. Windows soviel ich weiß geht bis 16.

Da muss man genauso beim rauschreiben drauf achten...denn die Funktion .getBytes() by Strings ist nämlich vom Zeichensatz abhängig.


----------



## janw (15. November 2006)

der linux-rechner, auf dem es läuft, unterstützt das dann anscheinend...gut zu wissen 
rausschreiben tut ein anderer Prozess, der ist anscheinend auch in der Lage, Umlaute zu schreiben.


----------

