Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Работа с разными таблицами кодировки в Cache / 10 сообщений из 10, страница 1 из 1
19.10.2005, 14:48
    #33333222
-Serg-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
Проблема.
Считывается в Cache текст в кодировке utf-8.
Есть ли стандартные методы перекодировки в Cache?

Например, из utf-8 в win и т.д.
...
Рейтинг: 0 / 0
19.10.2005, 15:03
    #33333262
Maksim UM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
в Cache >=5 есть функция - $ZCONVERT
нужно установить правильно кодировку
текущего устройства, а затем
Код: plaintext
Set a=$ZCONVERT(a,"O","WIN1251")
или что-то в этом духе...
...
Рейтинг: 0 / 0
19.10.2005, 16:31
    #33333545
-Serg-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
похоже на правду, но что-то не работает
выдает <ILLEGAL VALUE>

возможно, имя таблицы в опциях, в понимании Каше не так звучит.
Метод научного тыка не помог. В документации ничего не нашел.

Где же посмотреть, как звучит в понимании Каше имена таблиц кодировки????
...
Рейтинг: 0 / 0
19.10.2005, 16:55
    #33333619
Maksim UM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
Посмотреть таблицы можно с помощью утилиты:
d Dump^%NLSMISC
...
Рейтинг: 0 / 0
19.10.2005, 16:58
    #33333626
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
-Serg-Проблема.
Считывается в Cache текст в кодировке utf-8.
Есть ли стандартные методы перекодировки в Cache?

Например, из utf-8 в win и т.д.
$zcvt(str,"I","UTF8")
...
Рейтинг: 0 / 0
19.10.2005, 17:05
    #33333648
LittleCat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
Таблицы посмотреть/создать/отредактировать можно через cnls.exe. Простой способ посмотреть установленные таблицы - выполнить в командной строке Do Dump^%NLSMISC , можно увидеть что-то подобное
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
I/O Table Name    Offset:Type     Source Global
--------------    -------------   -------------
UnicodeLittle In     E62954:Struct8  %nls("Src","XLT","UnicodeLit","CP1251")
                 Out    E62960:Struct8  %nls("Src","XLT","CP1251","UnicodeLit")
UnicodeBig    In     E6293C:Struct8  %nls("Src","XLT","UnicodeBig","CP1251")
                 Out    E62948:Struct8  %nls("Src","XLT","CP1251","UnicodeBig")
SAME           In     E60400:Struct8
                 Out    E60408:Struct8
UTF8            In     E62924:Struct8  %nls("Src","XLT","UTF8","CP1251")
                 Out    E62930:Struct8  %nls("Src","XLT","CP1251","UTF8")
BIN              In     E60400:Struct8
                 Out    E60408:Struct8
RAW            In     E60400:Struct8
                 Out    E60408:Struct8
CP866          In     E61588:Struct8  %nls("Src","XLT","CP866","CP1251")
                 Out    E61594:Struct8  %nls("Src","XLT","CP1251","CP866")
HTML           In     E61BD0:Struct8  %nls("Src","XLT","EscHTML","CP1251")
                 Out    E61BDC:Struct8  %nls("Src","XLT","CP1251","EscHTML")
JS               In     E61C2C:Struct8  %nls("Src","XLT","EscJS","CP1251")
                 Out    E61C38:Struct8  %nls("Src","XLT","CP1251","EscJS")
KOI8R          In     E61C44:Struct8  %nls("Src","XLT","KOI8R","CP1251")
                 Out    E61C50:Struct8  %nls("Src","XLT","CP1251","KOI8R")
LatinC          In     E61C5C:Struct8  %nls("Src","XLT","LatinC","CP1251")
                 Out    E61C68:Struct8  %nls("Src","XLT","CP1251","LatinC")

В первом столбце как раз имена таблиц, которые можно подставить в $ZCVT()
...
Рейтинг: 0 / 0
20.10.2005, 16:57
    #33335718
-Serg-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
Спасибо.
работает все.
Единственно жалко, что не все таблицы описаны стандарным образом.
Рально можно пользоваться только перекодировкой koi8-r и utf-8 :-(
...
Рейтинг: 0 / 0
20.10.2005, 17:02
    #33335735
Работа с разными таблицами кодировки в Cache
Вместо WIN1251 надо писать CP1251. Но у меня это дело не помогает, в таблице UTF8 для русских символов есть две области, похоже в одну попадают из восьмибитных кодировок, в другую из юникоде. Пришлось все перекодировать шаманством, ставить базу юникоде. Самое забавное, что при выгрузке в cdl я использую CP1251 однако обратно загрузить их не могу. Приходится загружать в восьмибитную базу, оттуда выгружать в хмл.
...
Рейтинг: 0 / 0
20.10.2005, 17:19
    #33335787
LittleCat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
-Serg-Спасибо.
работает все.
Единственно жалко, что не все таблицы описаны стандарным образом.
Рально можно пользоваться только перекодировкой koi8-r и utf-8 :-(
Так если что-то не устраивает, можно свою таблицу описать, такую, какую хочется :-)
...
Рейтинг: 0 / 0
24.10.2005, 14:04
    #33340328
-Serg-
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с разными таблицами кодировки в Cache
LittleCat -Serg-Спасибо.
работает все.
Единственно жалко, что не все таблицы описаны стандарным образом.
Рально можно пользоваться только перекодировкой koi8-r и utf-8 :-(
Так если что-то не устраивает, можно свою таблицу описать, такую, какую хочется :-)

типа utf-8 ??? имеющей несколько миллионов комбинаций ???
например, utf-16 ???
Хотелось бы такие вещи иметь от разработчиков, стандартные. А не тулить самопалы при каждом ежемесячном обновлении версии Каше. :-(((
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Работа с разными таблицами кодировки в Cache / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]