[Cascavel-pm] Perl + TT2 + Postgres

André Garcia Carneiro andre.garcia.carneir em terra.com.br
Terça Agosto 28 08:07:53 PDT 2007


Otávio,

Normalmente, os problemas com codificação deveriam ser resolvidos simplesmente deixando todo mundo com a mesma
codificação :P
É meio óbvio mas a resposta é essa mesmo. Se você trabalha em UTF-8, não deveria codificar coisas em ISO, e
vice-versa, mas se isso não depende de você, o que parece o seu caso, eu vou te dar duas soluções que eu
costumo usar por aqui.


SOLUÇÃO 1
use strict;
use Encode;

my $string_zuada_em_ISO = 'A$@o'; #Simulando o problema. Essa string deveria ser Ação. Mas está codificada em
8859-1, quando deveria estar em UTF-8.

$string = encode('utf-8',$string);

print $string;

SOLUÇÃO 2
use Unicode::UTF8simple;
my $u = Unicode::UTF8Simple->new();

my $string_zuada_em_ISO = 'A$@o';# não vou escrever de novo....

$string  = $u->toUTF8('iso-8859-1',$string);

print $string;


Para maiores informações, RTFM em CPAN:

http://search.cpan.org/~dankogai/Encode-2.23/Encode.pm

http://search.cpan.org/~gus/Unicode-UTF8simple-1.06/UTF8simple.pm


---------- Cabeçalho original -----------

De: cascavel-pm-bounces+andre.garcia.carneir=terra.com.br em pm.org
Para: saopaulo-pm em pm.org,"Cascavel Perl Mongers" cascavel-pm em pm.org
Cópia: 
Data: Mon, 27 Aug 2007 22:02:49 -0300
Assunto: [Cascavel-pm] Perl + TT2 + Postgres

> Senhores,
> 
> Tenho algumas aplicações em Perl que usam TT2 e exibem dados de uma
> base de dados em Postgres (utilizando Template::Plugin::DBI), porem,
> quando eu estou exibindo os caracteres com acentos todos eles vem
> quebrados (típico de quando você abre um arquivo ISO-8859-1 em
> codificação UTF-8), quando eu consulto o banco também vem desta forma,
> há como fazer com o TT2 a conversão destes ? Eu fiz várias tentativas
> com o Template::Provider::Encode::Guess, e não obtve sucesso ...
> alguém tem sugestão ?
> 
> um abraço,
> 
> -- 
>  | --
>  | Otávio Fernandes < otaviof | gmail | com >
>  | FreeBSD 6.2 Release && GNU/Linux User: 283.396
>  | (( Especial Programação )) http://geekbr.podcastbrasil.com/
>  | --
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
> 
> E-mail classificado pelo Identificador de Spam Inteligente Terra.
> Para alterar a categoria classificada, visite
>
http://mail.terra.com.br/cgi-bin/imail.cgi?+_u=andre.garcia.carneir&_l=1,1188263061.724685.28413.cadarga.hst.terra.com.br,3988,Des15,Des15
> 
> Esta mensagem foi verificada pelo E-mail Protegido Terra.
> Scan engine: McAfee VirusScan / Atualizado em 27/08/2007 / Versão: 5.1.00/5106
> Proteja o seu e-mail Terra: http://mail.terra.com.br/
> 
> 

--
André Garcia Carneiro
Developer(Perl/PHP)
Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org



Mais detalhes sobre a lista de discussão Cascavel-pm