Forum Webscript.Ru

Программирование => Perl => Тема начата: Troum от 14 Мая 2003, 13:48:48

Название: XML::Simple и русские кодировки
Отправлено: Troum от 14 Мая 2003, 13:48:48
Надо отпарсить простой XML-документ, имеющий русские значения элементов
Пользую XML::Simple :

use XML::Simple;
$simple=XML::Simple->new();
$page=$simple->XMLin(\'./1.xml\');

Проблема №1 - при выводе на печать значения элемента
print $page->{element};
 выкидывается предупреждение
Wide character in print

Проблема №2 - значение элемента выводится в юникоде.
Изучив аналогичный тред http://www.xpoint.ru/archive/topic35/31/6242.html
попробовал использовать Unicode::Lite, но ничего путного не добился

Нужна помощь
Название: XML::Simple и русские кодировки
Отправлено: NeoNox от 14 Мая 2003, 14:00:24
1. Ошибка в Reader.pm выдается? Поставь use bytes;
2. То есть нечего не добился? Что происходит, подробнее?
Название: XML::Simple и русские кодировки
Отправлено: Troum от 14 Мая 2003, 14:06:17
1. Ошибка вида Wide character in print at xml-simple.pl line 12, но значение выводится (в юникоде)

2. Полбзуюсь методом convert, а именно
convert \'unicode\',\'windows-1251\',$page->{element};
В результате ничего не меняется. Пробовал играться с кодировками - одни иероглифы сменялись другими
Название: XML::Simple и русские кодировки
Отправлено: NeoNox от 14 Мая 2003, 15:07:10
1. я уже ответил. use bytes;
2. пробуй модуль cyrillic
Название: XML::Simple и русские кодировки
Отправлено: Troum от 14 Мая 2003, 16:16:46
1. OK
2. OK

NeoNox, Вы Маг и Волшебник!