[Rio-pm] Problemas com codificação de caracteres
Lucas Mateus
lucasmateus.oliveira em gmail.com
Segunda Abril 13 13:18:33 PDT 2009
Talvez seja bem simples se vc configurar seu MySQL para UTF8.
#!/usr/bin/perl
use utf8;
no utf8;
@dados = &getDataMSAccess(); ## funcao que recupera dados do MS Access
foreach $data (@dados) {
utf8::encode($data);
&insetDataMySQL($data); ## funcao que insere os dados no MySQL
}
__END__
On Mon, 13 Apr 2009 16:22:06 -0300, jimmy <ronaldo_tgz em yahoo.com.br> wrote:
> On Mon, Apr 13, 2009 at 04:01:27PM -0300, Henrique Ribeiro wrote:
>> Caros monges,
>>
>> Estou desenvolvendo um script boladão pra converter uma base de
>> dados MS
>> Access pra MySQL. Estou usando perl e já teria terminado a tarefa se
>> os
>> malditos caracteres com acento não estivessem todos estragados.
>>
>> Quando eu abro o arquivo com a entrada do script no vim os acentos
>> aparecem corretos, mas no perl não.
>>
>> Eu acredito que seja um problema de codificação dos caracteres
>> (utf-8 ou
>> iso-8859-1, sei lá). Dei uma procurada no CPAN, mas não encontrei
>> exatamente o que estava procurando.
>>
>> ------------------------->8---------------------------------------------------
>>
>> my @vetor = `mdb-export -H ponto.mdb C_FUNCIONAL`;
>>
>> foreach ( @vetor ) {
>> my @parts = split /,/;
>> print "$parts[0],$parts[1]\n"; # Daqui saem os caracteres
>> ruins
>> # $dbh->do ( "insert into tabela values ( \"$parts[0]\",
>> \"$parts[1]\" );" );
>> }
>>
>> ------------------------->8---------------------------------------------------
>>
>> Alguém tem alguma sugestão?
>>
>> Obrigado,
>> Henrique
>
> talvez essa entrada no wiki consiga lhe ajudar:
>
> http://www.perl.org.br/Artigos/ComoUsarUTF8EOutrosEncodingsEmPerl
>
>
--
Lucas Mateus
Núcleo de Páginas Rápidas e SEO
Fone: 55 11 3065-9978
MSN: lucasmateus_777 em hotmail.com
Mais detalhes sobre a lista de discussão Rio-pm