![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Sugar84 |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.5.2010 Репутация: нет Всего: нет |
Привет всем!
Как известно, Data::Dumper не выводит utf8 символы, допустим такой код:
Выводит такую чушь:
Но так как мне необходим способ заставить дампер показывать юникодные символы, то я пошел в гугл, вбил Data::Dumper+utf8, и наткнулся на занимательный хак. Подправил скрипт:
Но код выводит такую же чушь. Проверял я на 5.8.9, один чувак утверждает, что на 5.10.0 у него это работает. Народ, проверьте, пожалуйста, у кого на какой версии это работает. Или подскажите более элегантный способ дампить юникодные символы в сложных структурах. Заранее благодарен за любую помощь |
||||||
|
|||||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
Sugar84, можно попробовать исправить Data::Dumper::qqoute на Data::Dumper::qquote.
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
# print 'ываыва' 'фа' 'фыва' | perl -MData::Dumper -lne '$a = [ split "\\s+" ]; print Dumper $a'
$VAR1 = [ 'ываыва', 'фа', 'фыва' ]; # perlversion Data::Dumper Data::Dumper: 2.128 # |
|||
|
||||
Sugar84 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.5.2010 Репутация: нет Всего: нет |
ginnie,
Спасибо! Увидел, исправил - заработало! ![]() Это ж надо быть таким остолопом =((, вчера весь вечер просидел, чего только не навыдумавал, сегодня с утра пришел, сразу в глаза бросилось... Эх, не зря говорят: "Утро вечера мудренее"! =) Ну ладно, пусть тема висит, может кому этот грязный хак пригодится. Хотя, наверно, лучше этим не злоупотреблять. Добавлено через 3 минуты и 38 секунд arto: # print 'ываыва' 'фа' 'фыва' | perl -MData::Dumper -lne '$a = [ split "\\s+" ]; print Dumper $a' У меня это тоже работает (кстати обновил-таки Dumper до 2.128. Но из скрипта, без всяких фокусов, все равно выдает escape-последовательности. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |