- RU.PERL ----------------------------------------------------------- RU.PERL -
Msg : #5575 [620]
От : Fomin Maxim 2:5015/157.2 31 января 05, 15:50
Кому : All 12 февраля 05, 20:59
Тема : PerlSAX проблема с кодировками!!!
-------------------------------------------------------------------------------
From: fomin@ora.db.energy.gov.ua (Fomin Maxim)
Собственно задача и проблема.
system Linux/perl 5.8.1
Приходит письмо(rfc822) с атачем(rfc1521) в котором содержится XML(1.0)
документ с кирилицей win1251.
...
Используя (MIME-tools-5.416) раскодирую MIME64 получаю xml (win1251).
Затем начинаю обрабатывать его XML-SAX-0.12 + XML-NamespaceSupport-1.08,
в XML/Parser/Encodings добавлены (ibm866.enc, koi8-r.enc,
windows-1251.enc)
тут и начинаются проблемы... Посыпались ошибки UTF8 после (no warnings
"utf8") перестало матерится но выдает пропарсеный текст в неизвестной
кодировке.. Я подозреваю что проблема возможно с подержкой UTF8 но я точно
не знаю где, что и почему..
Если кто то уже сталкивался с подобной проблемой ПОЖАЛУСТА отпишите свои
соображения или советы как пофиксить. Почти все готово тока это .. %(
код только использования SAX парсера
use XML::Parser::PerlSAX;
use MyHandler;
my $parser=XML::Parser::PerlSAX->new(Handler=>MyHandler->new());
if(my $file=shift @ARGV){
$parser->parse(Source=>{SystemId=>$file});
}else{
my $input="";
while(){$input.=$_}
$parser->parse(Source=>{String=>$input});
}
exit;
--- Nizhny Novgorod NNTP-HTTP Gateway
* Origin: http://newsgate.nnov.ru (2:5015/157.2@fidonet)