Newsgroup: it.comp.java
Titolo: 'Þ' al posto di 'è'

Al posto di certi caratteri (speciali) me ne compaiono altri.
Esempio: System.out.println("Java è bello"); sullo schermo compare
"Java Ş bello"
Come faccio a risolvere il problema?
Grazie

 "Java Ţ bello"
Servirebbe qualche informazione in piů sul tuo sistema. Io supporrei che
sei sotto Linux, e quindi puň essere un problema di font non adatto
(sotto X) o code map (sotto console).
Ciao,
 Stefano
----------
"X WindowSSS, teSSSoro mio... lo odieremo per SSSempre"
Bill Gollum
----------

> "Java Ţ bello"
SR> Servirebbe qualche informazione in piů sul tuo sistema. Io supporrei che
SR> sei sotto Linux,
E supponi male!!!!!! Ho provato ed  č il risultato che si ha lanciando
java Classe  da cmd.exe :). Dei piů  vecchi font di X,  quelli che non
rispettano iso8859.1,  alcuni davano  il punto esclamativo,  altri una
specie di  h e alcuni (come  il derivato del Computer  Modern fatto da
Sun) nulla.
\begin{echelon}
Ft. Meade bomb spy SDI Clinton Qaddafi FBI radar counter-intelligence
$400 million in gold bullion munitions Kennedy Soviet NORAD Albanian
\end{echelon}
\begin{avviso}
 
Attenzione: Leggersi lo header riguardo al mio e-mail!
Warning: read header for infos about my e-mail.
\end{avviso}
+----------------------------------------------------------------+
| Gian Uberto Lauri * "So, are you working on fixing that bug    |
| 
sa...@eng.it
      *  *now* or leaving it until later ?" - YES  |
+----------------------------------------------------------------+

 "Java Þ bello"


 writes:
A> Java per essere portabile non usa i caratteri normali ASCII e la loro
A> codifica, quindi la conversione che viene fatta in automatico č "errata".
Niet!  Java   usa  una  codifica   che  si  "sovrappone   molto  bene"
all'iso8859.1  per  quello che  riguarda  i  codici  al di  sopra  del
0x007F. Quello che  sbaglia č cmd.exe che usa  delle "codepage" broken
from design...
\begin{echelon}
SEAL Team 6 $400 million in gold bullion AK-47 NORAD security Marxist
Noriega jihad radar supercomputer NSA Nazi Semtex North Korea
cryptographic


 Come faccio a risolvere il problema?
secondo me non e` un problema di java ma di "comunicazione" fra la JVM e
il tuo S.O., quindi mi sa` che c'e` poco che tu possa risolvere... 
La soluzione piu` semplice e` quella di adottare solo caratteri ASCII a
7 bit e lasciar perdere la codifica "ASCII estesa", il che significa
usare "e`" anziche` "è" e cose di questo tipo... cosi` dovresti andare
sul sicuro, ed evitare qualsiasi rischio di incompatibilita`.
-- 
Ciao,  |  I play Russian roulette everyday, a man's sport,
Matteo |  With a bullet called life, yeah called life, (SUGAR)

 sei sotto Linux, e quindi può essere un problema di font non adatto


 writes:
LS> Il problema è  che Java usa la codifica  UNICODE dei caratteri per
LS> la quale le
LS> lettere sono
LS> è    00E8 (232)
LS> é    00E9 (233)
La System.out.println() su una console non UNICODE provoca l'emissione
di caratteri  ad 8 bit invariati  e rimappa (a quanto  pare) gli altri
. Ho  provato a mandare  \u01C7 - fa  parte dell'alfabeto croato  - in
output su un rxvt (sotto NT) che usa il courier TT come font (codifica
ISO-8859.1) e l'output (dump hex)
00000000: 4a61 7661 20e8 2062 656c 6c6f 3f0d 0a    Java . bello?..
LS> Ma se uso la tabbela ASCII, essendo sopra le prime 127 , gli altri
LS> caratteri dipendono dalla tabella ASCII usata dall'applicativo (La
LS> shell di linux)
Non è  la shell quanto  "il terminale" ed  il font usato. La  shell di
linux oltretutto non c'entra per nulla in quanto è molto probabilmente
in wait()  sulla morte della JVM  - e tra l'altro  non c'entra nemmeno
cmd.exe che accusavo io ieri, la colpa è in realtà della console di NT
che viene data a cmd.exe, se  lanci java da un cmd.exe che gira dentro
un rxvt con il courier TT come font non ci sono rogne.
\begin{echelon}
domestic disruption Saddam Hussein CIA Peking kibo SDI Ortega Soviet
nuclear assassination explosion Clinton Marxist World Trade Center
Cocaine


 "Java Þ bello"
