Então, no perl, quando você lê um texto, você deveria indicar qual o encoding de origem, para que o perl saiba como tratar esse texto (ele vai converter para um encoding proprio [shiuu, é utf-8 mas vc nao precisa saber disso])
e na hora que você for escrever, você diz qual encoding você quer escrever, e ai o perl lê do encoding dele e transforma no desejado. Isso funciona lindamente, quando você faz tudo certo! Sem postar seu codigo inteiro ou as partes que você lê e como você ta verificando, vai ficar complicado de avaliar, porque nós não estamos no mesmo ambiente que você para poder testar 2013/10/3 Ricardo Stock <[email protected]> > Ola Lucas, este é o exemplo classico que esta no cpan, devo estar > fazendo algo errado, pois não esta funcionando. mesmo assim vou tentar > novamente com seu código no lugar do meu. > > vale lembrar que. > > Estou imprimindo via web e tenho a certeza de estar colocando nos headres > da pagina <meta http-equiv="Content-Type" content="text/html; > charset=iso-8859-1" /> > > Recebo a string via LWP, por isto criei uma função em um arquivo ex: > lib_converte_uft8.pl onde no arquivo principal que esta imprimindo a > string, antes de imprimir faço a conversão. > > ou seja, esta é a sequincia > > $string=busca_via_LPW($string); > $string=converte($string); > > print $string; > > > mas continua imprimindo em utf8. > > Por exemplo a palavra são vem S\u00e3o e deveria ficar São > > Acho que o erro deva estar durante a passagem entre o recebimento via LWP. > Acho que vou tentar converter para ascii, neste caso os acentos não serão > iportantes, nem mesmo o ç. > > Mesmo assim vou continuar pesquisando... já ta rolando uma semana. > > > Mas Obrigado. > > > > *From:* Lucas Oliveira <[email protected]> > *Sent:* Thursday, October 03, 2013 9:34 AM > *To:* [email protected] > *Subject:* Re: [SP-pm] Moduo Encode > > > Tente isso. > > sub utf8_to_iso { > use Encode; > my ($string) = @_; > eval { > $string = decode('utf8', $string, Encode::FB_CROAK); > $string = encode('iso-8859-1', $string) > }; > return $string; > } > > > Em 03/10/2013, às 08:29, "Ricardo Stock" <[email protected]> > escreveu: > > Bom dia a todos. > > Pessoal estou tentando utilizar o modulo Encode para a conversão de > utf8 para iso, porem não estou conseguindo, segue trecho do codigo. > > sub Converte { > use Encode; > my $string=undef; > ($string)=@_; > $string= decode_qp($string); > $string=encode('iso-8859-1', $string); > > return $string; > } > > > porem continua e imprimir em utf8. > > Qlguma dica. > > Obrigado > > Ricardo Stock > http://www.stocksistemas.com.br > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > > ------------------------------ > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > -- Saravá, Renato CRON http://www.renatocron.com/blog/ @renato_cron <http://twitter.com/#!/renato_cron>
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
