Dodatek F.
Kodowania
Poniższa tabela zawiera sugerowane kodowania dla dużej ilości języków. Kodowania są wykorzystywane przez serwlety generujące informacje w wielu językach; określają one, które kodowanie znaków powinien wykorzystać PrintWriter serwletów. Domyślnie PrintWriter wykorzystuje kodowanie ISO-8859-1 (Latin-1), właściwe dla większości języków zachodnioeuropejskich. Aby określić alternatywne kodowanie, wartość kodowania musi zostać przekazana metodzie setContentType() zanim serwlet pobierze swój PrintWriter, na przykład:
odp.setContentType("text/html; charset=Shift_JIS"); // Kodowanie japońskie
PrintWriter wyj = odp.getWriter; // Zapisuje japoński Shift_JIS
Kodowanie może być również ustawione pośrednio, przy pomocy metody setLocale(), na przykład:
odp.setContentType("text/html");
odp.setLocale(new Locale("ja", "")); // Ustawia kodowanie na Shift_JIS
PrintWriter wyj = odp.getWriter; // Zapisuje japoński Shift_JIS
Metoda setLocale() przypisuje odpowiedzi kodowanie zgodnie z poniższą tabelą. W przypadku, gdy możliwe jest więcej niż jedno kodowanie, wybierane jest kodowanie umieszczone w tabeli na pierwszej pozycji.
Proszę zauważyć, że nie wszystkie przeglądarki WWW obsługują wszystkie kodowania, lub posiadają czcionki, dzięki którym istnieje możliwość wyświetlania wszystkich znaków, chociaż wszystkie klienty obsługują przynajmniej ISO-8859-1. Proszę także pamiętać, że kodowanie UTF-8 może reprezentować wszystkie znaki Unicode, a w związku z tym może być uznane za właściwe dla wszystkich języków.
Język |
Kod języka |
Sugerowane kodowania |
angielski |
en |
ISO-8859-1 |
Albański |
sq |
ISO-8859-2 |
Arabski |
ar |
ISO-8859-6 |
białoruski |
be |
ISO-8859-5 |
Bułgarski |
bg |
ISO-8859-5 |
chiński (tradycyjny / Tajwan) |
zh (kraj TW) |
Big5 |
chiński (uproszczony / kontynentalny |
zh |
GB2312 |
Chorwacki |
hr |
ISO-8859-2 |
czeski |
cs |
ISO-8859-2 |
duński |
da |
ISO-8859-1 |
holenderski |
nl |
ISO-8859-1 |
estoński |
et |
ISO-8859-1 |
fiński |
fi |
ISO-8859-1 |
francuski |
fr |
ISO-8859-1 |
grecki |
el |
ISO-8859-7 |
hebrajski |
he (dawniej iw) |
ISO-8859-8 |
hiszpański |
es |
ISO-8859-1 |
islandzki |
is |
ISO-8859-1 |
japoński |
ja |
Shift_JIS, ISO-2022-JP, EUC-JP |
kataloński (hiszpański) |
ca |
ISO-8859-1 |
koreański |
ko |
EUC-KR |
litewski |
lt |
ISO-8859-2 |
łotewski |
lv |
ISO-8859-2 |
macedoński |
mk |
ISO-8859-5 |
niemiecki |
de |
ISO-8859-1 |
polski |
pl |
ISO-8859-2 |
portugalski |
pt |
ISO-8859-1 |
rosyjski |
ru |
ISO-8859-5, KOI8-R |
rumuński |
ro |
ISO-8859-2 |
serbski |
sr |
ISO-8859-5, KOI8-R |
serbsko-chorwacki |
sh |
ISO-8859-5, ISO-8859-2, KOI8-R |
słowacki |
sk |
ISO-8859-2 |
słoweński |
sl |
ISO-8859-2 |
szwedzki |
sv |
ISO-8859-1 |
turecki |
tr |
ISO-8859-9 |
ukraiński |
uk |
ISO-8859-5, KOI8-R |
węgierski |
hu |
ISO-8859-2 |
włoski |
it |
ISO-8859-1 |
Obsługiwany po raz pierwszy w JDK 1.1.6. Poprzednie wersje JDK znają zestaw znaków EUC-JP pod nazwą EUCJIS, tak więc w celu zapewnienia przenośności można ustawić kodowanie na EUC_JP i samodzielnie skonstruować PrintWriter EUCJIS.
Obsługiwany po raz pierwszy w JDK 1.1.6. Poprzednie wersje JDK znają zestaw znaków EUC-KR pod nazwą KSC_5601, tak więc w celu zapewnienia przenośności można ustawić kodowanie na EUC_KR i samodzielnie skonstruować PrintWriter KSC_5601.
2 Część I ♦ Podstawy obsługi systemu WhizBang (Nagłówek strony)
2 C:\WINDOWS\Pulpit\gosia\mmm\rF-t.doc