[Cascavel-pm] Conversão de letras acentuadas.
Luis Campos de Carvalho
monsieur_champs em yahoo.com.br
Quarta Outubro 27 09:38:10 CDT 2004
Rod Za wrote:
> Oi gente,
>
> O meu problema é que quando existe carcateres acentuados
> no nome do arquivo (ex: "Página de Teste") o usuário recebe
> uma mensagem truncada, justamente por causa das letras acentuadas.
>
> Sei que se eu enviar qualquer coisa do tipo "\240" no
> lugar de um "á" funciona sem problemas.
>
> As minhas dúvidas são:
>
> em que formato esta é "\240"? Existe alguma função que
"\240" deve ser octal ou hexadecimal.
Use a função "pack()" para descobrir.
> identifique uma letra acentuada e a converta para este
> formato (ex. para eu converter o "á"para "\240")?
Deve existir um módulo no CPAN para ajudar com isso.
Mas eu acho que você pode tentar conversão com "pack()" e "unpack()".
Semana que vem, quando eu estiver mais sossegado, posso tentar
descobrir alguma coisa.
> ou existe algum modo de se tirar os acentos das
> letras (ex: "áÁÄ" = "aAA")?
Você pode usar uma expressão regular, mas acho que vai ser obrigado a
"descolar" todos os códigos de letras acentuadas para fazer a conversão.
Aí, tudo se transforma em um "tr": tr/áÁà/\240\241\242/ e assim por
diante (inventei os códigos apenas para este exemplo).
Espero que isso ajude.
Putamplexos!
--
=======================================================
Luis Campos de Carvalho is BsC in Computer Science,
Certified Oracle DBA, UNIX and Linux lover, Perl
Fanatic and Leader of the Sao Paulo Perl Mongers
http://br.geocities.com/monsieur_champs/
=======================================================
Mais detalhes sobre a lista de discussão Cascavel-pm