On Mon, 31 Mar 2003 15:43:15 +0000, Henrik Stidsen wrote:
>> Problemet ligger ikke hos Java, men hos DOS. Din DOS bruger
>> sikkert codepage 850 (cp850) og ikke et ISO-Latin baseret
>> tegnsæt. Derfor har du to (måske flere) muligheder:
>
> Jeps, det er lige præcis den den bruger.
>
>> Under NT (og dermed sikkert også på XP og 2000) kan man vist
>> skifte codepage i DOS prompten med "chcp 1252" (og 1252 kan vist
>> bruges som iso-8859-1, selvom den ikke er helt kompatibel på
>> alle tegn).
>
> Jeg bruger ME (endnu) og den kan kun vise det frem via chcp.
> MSconfig kan skifte det, jeg skiftede til 1252 og det gik helt galt,
> der blev ændret masser af andre tegn uden at det havde nogen som
> helst effekt på java outputtet.
Jeg bruger ikke mere Windows, så hvis du vil gå denne vej må en anden
træde til ellers google lidt
>> Brug en dekoreret out. I nedenstående kode erklæres out som
>> værende en PrintWriter, der udskriver med en cp850 indkodning.
>> PrintWriter out = new PrintWriter(
>> new OutputStreamWriter(System.out,"cp850"));
>> så skal du bare bruge out i stedet for System out (dvs.
>> out.println(...) i stedet for System.out.println(...) ).
>
> Lyder letter avanceret...
>
> import java.io.*;
>
> class TegnTest {
> public static void main(String[] args) throws IOException {
> PrintWriter out = new PrintWriter(
> new OutputStreamWriter(System.out,"cp850"));
>
> out.println("Dette er en test : æøåÆØÅ");
// Prøv at flushe strømmen
out.flush();
> }
> }
>
> Givet intet output...
Se kommentar i koden
out.flush();
(det burde løse problemet ellers prøv at fange evt. exceptions og se om
det giver noget).
--
Mikkel Bundgaard
Student at IT University of Copenhagen
Codito, Ergo Sum