Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Проблема с кодировкой в Cache / 12 сообщений из 12, страница 1 из 1
26.09.2013, 18:33
    #38408873
Проблема с кодировкой в Cache
Здравствуйте! У меня появилась одна проблема. Я импортировал проект с одного сервера на другой. Однако на другом компьютере в файлах, входящих в проект (.csp и .cls) вместо русских символов появились вопросительные знаки (имею в виду символы, заключенные в двойные кавычки, для вывода на экран). На этом компьютере я изменил в конфигурации Сache кодировку 8 бит на Юникод, однако это не помогло.
Не можете подсказать, в чем здесь может быть дело? Может быть нужно менять кодировку в ОС? Кстати, стоит Windows Server 2008 R2. Заранее спасибо!
...
Рейтинг: 0 / 0
26.09.2013, 20:35
    #38408982
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
Думаю, вам лучше ответят специалисты, которые в этом разбираются лучше меня, но так делать не нужно было.
Если вы накатываете юникодовский проект на 8битную пустую базу, то лучше ее перед этим перестановить на юникодовскую.
А если вы к существующим 8 битным программам хотите добавить юникодовские, то их нужно было перекодировать сначала.
...
Рейтинг: 0 / 0
26.09.2013, 23:02
    #38409084
Проблема с кодировкой в Cache
Спасибо за ответ! Я только хотел бы уточнить, а как влияет язык системы на язык локали Cache. Я конечно с Cache работаю недавно, однако заметил, что при установке сервера на русскоязычную Винду устанавливается и русская локаль в Cache, а на английскую соответственно английская.
Однако у меня был случай, когда на английской винде был установлен русский язык в качестве языка системы. И соответственно была установлена русская локаль Cache. Однако в этом случае все русскоязычные символы тоже заменились знаками вопроса, в частности так выглядело меню в Студии.
Чтобы все исправить, пришлось установить в качестве языка системы английский язык и переустановить Cache.
Потому то я и подумал, может и здесь похожая проблема? Ведь я импортирую проект на компьютер, где установлена английская Винда, а на другом установлена русская.
...
Рейтинг: 0 / 0
27.09.2013, 12:32
    #38409642
eduard93
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
Горбань Глеб,
Попробуйте проделать следующие шаги:
1. Удалите импортированный проект (который внутри Caché с вопросительными знаками вместо русских букв).
2. а) В портале управления системой: Администрирование системы -> Конфигурация -> Настройка поддержки локальных языков -> Определение локали -> rusw
б) В студии: s ^%SYS("CSP","DefaultFileCharset")="UTF-8"
3. Файл xml с проектом откройте в notepad++ (или аналогичном) и проверьте в какой кодировке там текст, в случае если не UTF-8 перекодируйте в UTF-8.
4. Импортируйте файл с проектом.

Должно помочь.
...
Рейтинг: 0 / 0
01.10.2013, 14:37
    #38413129
Проблема с кодировкой в Cache
eduard93, спасибо огромное! Сделал так, как Вы сказали. Это помогло, всё заработало))
Вдогонку только еще хочу один вопрос задать. На всякий случай, что нужно указать, чтобы язык терминала изменился снова на английский? При изменении локали, он стал русским.
...
Рейтинг: 0 / 0
18.06.2014, 01:11
    #38672458
feanorcheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
а мне не помогло. Обычный текстовый файл с кодировкой UTF8, открывается в каше кучей вопросительных знаков(цифры читаются норм) что делать?
 set file=##class(%File).%New("C:\InterSystems\Ensemble\CSP\brsoi\sogl.txt")
 do file.Open("UTF8")
 set str=""
 for
 {
  quit:file.AtEnd
  set str = str_file.Read(32000)
 }
 set ..%GetComponentById("txt").value=$zcvt(str,"i","UTF8")
...
Рейтинг: 0 / 0
18.06.2014, 09:34
    #38672557
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
feanorchegчто делать? Правильно указывать кодировку, например do file.Open("SUK\UTF8\"), или воспользоваться более дружественными классами, например: #include %msql

 set file=##class(%FileCharacterStream).%New()
 set file.Filename="C:\InterSystems\Ensemble\CSP\brsoi\sogl.txt"
 set file.TranslateTable="UTF8"
 set str=file.Read($$$MaxStringLength)
 d ..%SetValueById("txt",str)
...
Рейтинг: 0 / 0
18.06.2014, 20:32
    #38673595
feanorcheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
К сожалению, оба эти способа не сработали. Кодировка настроена правильно и в каше и в текстовом файле
...
Рейтинг: 0 / 0
18.06.2014, 21:41
    #38673629
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
feanorchegК сожалению, оба эти способа не сработали. Кодировка настроена правильно и в каше и в текстовом файлеВыложите файл, укажите $zv и текущую локаль.
...
Рейтинг: 0 / 0
18.06.2014, 23:45
    #38673702
feanorcheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
Cache for Windows (x86-64) 2010.1.2 (Build 600U) Tue May 11 2010 04:32:59 GMTDT
...
Рейтинг: 0 / 0
19.06.2014, 08:54
    #38673811
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
feanorchegОбычный текстовый файл с кодировкой UTF8Это обычный текстовый файл в кодировке Windows-1251, поэтому UTF8 замените на CP1251 .
...
Рейтинг: 0 / 0
19.06.2014, 13:35
    #38674270
feanorcheg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с кодировкой в Cache
о, спасибо большое! Помогло!
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Проблема с кодировкой в Cache / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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