Re: ExtJS
Добавлено: 19 Февраль 2011, 15:49
Скачал ExtDesigner, вроде работает нормально - сгенерил простой браузер, всё ок. Попробую что-нибудь навороченное сваять.
Место общения программистов, форум разработчиков БД на Clarion
https://forum.clarionlife.net/
В NetTalk вроде есть конвертер, во всяком случае в шаблонах можно задать, чтобы показывать в utf-8, а в базе держать cp1252. Погляди, может оно? Я просил Брюса добавить балтийский (cp1257), добавил, работает.Дед Пахом писал(а):Всю голову себе сломал, но ничего не получается. Проблема такая: есть запись в БД, содержащая € (знак евро). Web browser его должен показать в виде Юникод-строки "\u20AC" (я проверял, действительно \u20AC превращается в €). Из базы он приезжает как символ 0x80. Как мне 80 превратить в 20AC??? Пробовал MultiByteToWideChar + WideCharToMultiByte, всё не то (MultiByteToWideChar из ASCII в Unicode возвращает <0xD0,0x82>, а последующее WideCharToMultiByte-преобразование из Unicode в UTF8 возвращает <0x02,0x04>).
Нашёл всякие конвертеры ascii -> unicode - работают правильно, даже исходники есть, но на javascript (не подходит).
Что-то не нашёл. Нашёл только \libsrc\netall.inc - класс _NetUnicode, попробовал на нём конвертацию <80h> в unicode (метод AnsiCStringToUnicodeCString), получил те же <02,04>. В обратную сторону тоже фуфло какое-то получается (UnicodeCStringToAnsiCString(20ACh) > 3Fh.Rimas писал(а):В NetTalk вроде есть конвертер, во всяком случае в шаблонах можно задать, чтобы показывать в utf-8, а в базе держать cp1252. Погляди, может оно? Я просил Брюса добавить балтийский (cp1257), добавил, работает.
В классе NetWebServer есть методы:Дед Пахом писал(а):Что-то не нашёл. Нашёл только \libsrc\netall.inc - класс _NetUnicode, попробовал на нём конвертацию <80h> в unicode (метод AnsiCStringToUnicodeCString), получил те же <02,04>. В обратную сторону тоже фуфло какое-то получается (UnicodeCStringToAnsiCString(20ACh) > 3Fh.Rimas писал(а):В NetTalk вроде есть конвертер, во всяком случае в шаблонах можно задать, чтобы показывать в utf-8, а в базе держать cp1252. Погляди, может оно? Я просил Брюса добавить балтийский (cp1257), добавил, работает.
А у меня этого нет, в начале файла NetWeb.inc написано "NetTalk v4.48", шаблон версии 4.53, а у тебя что?Rimas писал(а):В классе NetWebServer есть методы:
ThisWebServer CLASS(NetWebServer)
.............
_utfdecode PROCEDURE(String p_text),Long,DERIVED
_utfencode PROCEDURE(Long p_utf,*Long rLen),String,DERIVED
END
Подозреваю, что эти методы занимаются перекодировкой, но не пробовал
Понятно, у меня NetTak 5Дед Пахом писал(а):А у меня этого нет, в начале файла NetWeb.inc написано "NetTalk v4.48", шаблон версии 4.53, а у тебя что?Rimas писал(а):В классе NetWebServer есть методы:
ThisWebServer CLASS(NetWebServer)
.............
_utfdecode PROCEDURE(String p_text),Long,DERIVED
_utfencode PROCEDURE(Long p_utf,*Long rLen),String,DERIVED
END
Подозреваю, что эти методы занимаются перекодировкой, но не пробовал
Не, euro sign только для примера.Rimas писал(а):А почему ты не можешь просто вручную конвертировать? У тебя ведь, как я понял, проблемма только с одним символом?
0х80 = 128. Перекодируешь в E282ACh. 20ACh - это если кодировать utf-16 или utf-32
http://www.fileformat.info/info/unicode ... /index.htm
или я чего не понял?
Вообщем, напишешь все сам - что есть на входе - знаешь, что надо получить на выходе - знаешьRimas писал(а):Надеюсь, эта статья поможет: http://www.fileformat.info/info/unicode/utf8.htm
Кстати советую... http://uniformjs.com/Rimas писал(а):Наткнулся на библиотеку/фреймворк ExtJS для .net (http://www.ext.net/)
Что примечательно - легко подключается к Clarion.net