Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

Zypressen Hügel

Junior Schreiberling

  • "Zypressen Hügel" started this thread

Posts: 244

Date of registration: Dec 22nd 2001

1

Tuesday, September 24th 2002, 8:35pm

Umlaute in Java

hi. weiss zufällig jemand, wie ich die umlaute ä,ö,ü,Ä,Ö,Ü mit java einlesen und ausgeben kann (java 1.4.0 beta-version unter windows xp pro). ich versuche es mit einem FileInputStream, aber egal, wie ich das byte[]-array caste, es kommen immer nur rechtecke oder andere sonderzeichen, je nachdem ob ich in der dos-shell oder in java-swing-komponenten arbeite ;(
Man kann auch ohne Spass Alkohol haben 8)

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

2

Tuesday, September 24th 2002, 9:51pm

Ein wenig Quellcode in Form eines Minimalbeispiels wäre nicht schlecht gewesen ... ;)


Aber trotzdem: Das Problem ist die ein wenig unkonventionelle Zeichenkodierung (Cp850), die Windows für die Konsole benutzt.

Hier ein Beispielprogramm, das unter einer westeuropäischen Windows-Version funktioniert, nicht jedoch auf anderen Plattformen bzw. Sprachversionen. Für echte Plattformunabhängigkeit müßte man das Charset für die Ausgabe entsprechend setzen. Oder besser: durchgängig Unicode verwenden.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.io.*;

public class Test {
	public static void main(String[] args) {
		StringBuffer buffer = new StringBuffer();
		try {
			OutputStreamWriter osw = new OutputStreamWriter(System.out, "Cp850");
			PrintWriter pw = new PrintWriter(osw);
			BufferedReader in = new BufferedReader(new FileReader("test.txt"));
			int ch;
			while ((ch = in.read()) > -1) {
				buffer.append((char)ch);
			}
			pw.print(buffer.toString());
			pw.flush();
			pw.close();
		} catch (Exception e) {
		}
	}
}
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

AnyKey

Erfahrener Schreiberling

Posts: 451

Date of registration: Dec 11th 2001

Location: H-Town

Occupation: Student

3

Tuesday, September 24th 2002, 11:07pm

Zitat von irgendwoher ( ich glaub es war das Softwareprojekt oder SWTI/SWTII):

"wer umlaute verwendet verdient harte strafen !!!"

:D
aber ich weiss natuerlich nicht wofuer du die ae´s ue´s und oe´s brauchst :D:D:D:D

cya

"Der Mensch braucht Schubladen." -- Any Key

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

4

Tuesday, September 24th 2002, 11:36pm

Quoted

Original von AnyKey
"wer umlaute verwendet verdient harte strafen !!!"
Vor zehn Jahren hätte ich dem noch voll und ganz zugestimmt, aber mittlerweile sollten wir (vor allem Dank Unicode, insbesondere in Verbindung mit XML) aus dem gröbsten raus sein. Und gerade jetzt sollte man Umlaute und Sonderzeichen verwenden, um endlich Gründe zu schaffen, die ganzen alten Krücken loszuwerden. Sogar in den USA hat man inzwischen gemerkt, daß man um vernünftige Internationalisierung nicht mehr herumkommt ...
The purpose of computing is insight, not numbers.
Richard Hamming, 1962