Общие > Веб-технологии
Netscape и unicode
(1/1)
:
Тут большие баталии были с нетскейпом и есплорером...
Не принимая ничью сторону, вопрос: понимает ли нетскейп unicode? В частности, функция escape просто переводит строку в набор ее кодов в DOS-кодировке (кажется, но не unicode точно). Дело в том, что у меня апплет читает данные с сервера и выводит их в ListBox (и TextArea, неважно - явовские компоненты). В експлорере вск ОК, а в нетскейпе выводятся странные закорлючки :) Если выводить строку, заданную в апплете в виде констатны, все работает нормально. Очень подозреваю unicode.
Oak:
Понимает
Ты уверен, что именно unicode выводишь?
Поясняю - в unicode сначала идет Latin1 (закорючки вот те) , но Microsoft Win шрифты патчились специально, чтобы заменить их на русские символы кодировки cp1251. т.е если ты наберешь в cp1251 оно будет читаться по русски, хоть и не является unicode (это в IE)
А NN при этом возмет правильный шифт и покажет так как надо - Latin1
Какие там коды ? Точно из 5ой страницы?
Смотри:
http://cad.kiev.ua/~malvin/prj/chars/chars4.c
--- Цитировать ---
if(a==\'#\')
{i=0;
scanf("%u;",&i);
if(i==0) printf("");
else putchar((char)i);
}
--- Конец цитаты ---
Это специально для исправления такого "псевдоюникода" - когдато FronPage очень любил его вместо русских букв сохранять а в NN тогда знаки вопроса показывались, хотя в IE - все ок.
:
Прошу прощения, что отвечаю не сразу - доступа не было.
Я вывожу не в Unicode, это Java хранит строки в Unicode. Выяснилось 2 вещи насчет нетскейпа: во-первых, Java в нем нужно специально русифицировать, а во-вторых, он, почему-то, при скачивании данных урезает коды символов на 380h. Почему, не знаю. После русификации и прибавления 380h к кодам все заработало, однако с Unicode я до сих пор не понимаю. Насколько я знаю, под русский алфавит отведены символы с кодами 400h-4FFh. В експлорере эти символы выводятся нормально, а в нетскейпе - нет.
В частности, такой скриптец:
var Chars=new Array(16);
Chars[0]=\'0\';
Chars[1]=\'1\';
Chars[2]=\'2\';
Chars[3]=\'3\';
Chars[4]=\'4\';
Chars[5]=\'5\';
Chars[6]=\'6\';
Chars[7]=\'7\';
Chars[8]=\'8\';
Chars[9]=\'9\';
Chars[10]=\'A\';
Chars[11]=\'B\';
Chars[12]=\'C\';
Chars[13]=\'D\';
Chars[14]=\'E\';
Chars[15]=\'F\';
S=\'\';
j=4;
k=0;
l=0;
for (i=0; i
Навигация
Перейти к полной версии