Znaki specjalne - java

0

Mam taki problem, chciałbym wyświetlać znaki specjalne w javie, np. symbol Pi itd. Wpisując w Eclipse kod litery PI "\u03A0" po kompilacji wyskakuje znak zapytania, ogólnie niektóre znaki specjalne się wyświetlają bez problemu, natomiast przy niektórych (np. PI) wyskakuje znak zapytania.

0

Może trzeba zmienić kodowanie (strzelam)

0

Ale jak kompilujesz i uruchamiasz w Eclipse czy poza ? Spróbuj poza ja tak miałem z polskimi znakami

0

Konsola czy programem z GUI? Jeśli GUI, to jaka czcionka? U mnie (windows xp) w programach z GUI dla czcionki domyślnej (Dialog) i dla monospaced wyświetla się małe i duże pi.

0

Odpalałem w konsoli i dalej ten sam efekt, czyli wyświetlający się znak zapytania. W eclipsie tez to samo. Ustawioną mam czcionkę Consolas. W Dr. Java przestawiłem czcionkę na Consolas i PI i inne znaki się wyswietlaja. A w eclipsie dalej nic.

0

A nie masz ty po prostu czcionki ustawionej ktora nie ma takich glyphow ('literek')? Kodowanie nie ma tu znaczenia, przeciez podaje escapowane kody.

1

Wersja na siłe - możesz skopiować to :P

System.out.println("π"); 
System.out.println("\u03c0"); // to działa przy kodowaniu znaków utf8 na konsoli 
0

Madaoo dzięki. Zmieniłem kodowanie na UTF-8 i wszystko śmiga.
... Ale teraz jest problem z polskimi znakami. Nie ma jakiegoś złotego środka, zostawi bez zmian polskie znaki i będzie wyświetlał znaki specjalne ? Przy kodowaniu Cp1250 mam polskie znaki , ale nie mam znaków specjalnych , przy kodowaniu UTF-8 są znaki specjalne, ale jest problem ze znakami polskimi.

0

Hmmm kodowanie iso-8859-2, powinno załatwić sprawę, jak nie to locale ustasw tak:

// ustawienie lokalnych systmemowych
Locale plLocale = new Locale("pl", "PL");
Locale.setDefault(plLocale);

Sprawdź, jak nie zadziała to jest jeszcze kilka sposobów ze znakami specjalnymi i polskimi znakami ;)

1

Użyj kodowania Unicode - może być utf-32, utf-16 (BE/LE), utf-8 - bez znaczenia ponieważ w pamięci Javy i tak jest używany UTF-16LE (little endian) oraz na wyjściu aktywnej czcionki "Deja Vu", która istnieje na pewno w Windows 7 (nie wiem jak z licencjami). Ona zawiera prawie 6k znaków, a więc mapuje całkiem pokaźny kawał unikodu i jednocześnie zawiera polskie znaki. Na pewno można więc używać zarówno symbolu pi, trupiej czaszki i inwalidy oraz polskich liter. ;-)
Inne czcionki zawierają zazwyczaj, albo symbole bez znaków narodowych, albo znaki narodowe bez symboli. Do tego nakłada się jeszcze mapowanie 8-bitowe, które może nie pozwalać na połączenie pi i znaków narodowych w jednym subsecie (chyba żadne jakie znam nie pozwala).

1 użytkowników online, w tym zalogowanych: 0, gości: 1