Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Dmitry Belyavsky                     2:5020/400     17 Nov 2003  17:31:26
 To : All
 Subject : Perl 5.8
 -------------------------------------------------------------------------------- 
 
 Hello, All!
 Имеется система, которая успешно работала на perl 5.005, без малейших
 проблем. С появлением perl 5.6 и character-семантики пришлось во все модули
 системы добавить 'use bytes;', что замечательно работало на новых системах,
 а для старых систем пришлось держать такой стаб, что, впрочем тоже работало
 нормально.
 
 С появлением perl 5.8 и новых версий используемых в системе модулей, (а их
 
 предостаточно) use bytes уже срабатывает не всегда. Как только в ядро
 системы приходят данные (а они, похоже помечены как character) от этих самых
 внешних внешних модулей (XML::Parser, например) и эти данные каким-нибудь
 образом склеиваются с bytes-данными, все становится очень плохо, т.е. похоже
 что perl пытается bytes данные представить себе в виде unicode и получаем на
 выходе вместо русских символов (koi8-r | windows-1251). Что выглядит как "ц
 ц ц цц" перемежающееся некими nonprintable кодами.
 
 Вопросы:
 
 Можно ли как-нибудь форсировать bytes-семантику для всех модулей? Можно ли
 как-нибудь провести внутреннюю конвертацию данных, которые perl считает
 character, в bytes?
 
 Как посмотреть текущее представление некой переменной, т.е., к примеру,
 понять в bytes она или где?
 
 Понятно, что оптимальным является вариант полного перехода на utf8, но это в
 настоящее время тяжело.
 With best regards, Dmitry Belyavsky.  E-mail: beldmit@ice.ru
 --- ifmail v.2.15dev5.1
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Perl 5.8   Dmitry Belyavsky   17 Nov 2003 17:31:26 
 Re: Perl 5.8   Denis Poznyakov   17 Nov 2003 17:46:40 
Архивное /ru.perl/65773940218d.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional