Problemy s kodovanim cestiny
Podlesak Kamil
Kamil.Podlesak na ips-ag.net
Pátek Září 18 10:59:46 CEST 2009
> > Jiz jsem to jednou psal, ale napisu to znova: zdrojove kody
> v Jave piste
> > zasadne v ASCII.
>
> Jestli mi neco neuniklo, tak jsi mi psal, ze mam-li non-ASCII
> obsah, nesmim pouzivat GET...
Pravda, jen jsem to napsat chtel, ale nakonec jsem si to rozmyslel.
> > Pokud uz tam chcete dat nejaky exoticky znak, tak JEDINE pres \uXXXX
>
> Hmmm... no to by me ani ve snu nenapadlo, ze ve 21. stoleti existuje
> prostredi, kde je nutne znak, ktery lze napsat na klavesnici
> a korektne zobrazit na obrazovce, zejmena kdyz prostredi predstira,
> ze je Unicode awared, zadavat jak pred 30 lety escape sekvenci.
> (Ale asi melo, kdyz v .properties lze pres veskery pokrok v IT
> zadavat stale jen Latin-1...)
Pokrok v IT totiz neni linearni a v mnoha ohledech je spise reverzni - smerem k mensim moznostem. Typickym prikladem je prave to, ze soubory nemaji zadne metainformace o svem obsahu - je to jen hromada byte.
> Alespon v JLS pisou
> (http://java.sun.com/docs/books/jls/third_edition/html/lexical
> .html#3.10.5),
> ze *Characters may be represented by escape sequences* :-OOO
> Ne ze musi...
> Kdo ten bordel dela? Maven? Nebo to vadi samotnemu jazyku?
Jazyku to samozrejme nevadi, viz JLS.
Ovsem kompilator musi nekde vzit informaci, jak ma prevest sekvenci bytu v souboru na sekvenci unicode znaku - a to se mu musi predat jako parametr. Takze se to musi nastavit v mavenu, ale i v IDE a vsech dalsich toolech (napriklad VCS v tom dokazi nadelat docela paseku).
Cele je to hodne komplikovano pri pouziti Windows, kde se neda kodovani v locale, takze default je vzdy 1250 nebo 1252.
> > Dodrzovani tohoto pravidla usetri hodne boleni hlavy.
>
> Diky za radu - zkusime to prepsat a pretestovat
> cely ten deploy retezec, jestli ta cestine zacne
> konecne fungovat.
Pri peclive priprave to lze cele udelat i bez pouzivani escape sekvenci, pokud se opravdu vsude nastavi spravne kodovani. Mozna je opravdu chyba v tom mavenu. Nicmene, i tak porad hrozi nebezpeci ze prijmene noveho cloveka, on to otevre v nejakem editoru (IDE) kde si nezmenil nastaveni a buch - mate tam hromadu znaku ktere nedavaji zadny smysl v zadnem kodovani.
> Diky, pf
Další informace o konferenci Konference