[Cascavel-pm] Conversão de letras acentuadas.

Rod Za rodzadra em yahoo.com
Terça Outubro 26 08:18:19 CDT 2004


Oi gente,

Estou fazendo um programa em Perl (um sistema de gerenciamento de quotas de impressão) e preciso
enviar uma mensagem para os usuários via winpopup. Na realidade está funcionando quase que
perfeitamente.

A função é a seguinte:

[código]
sub send_smb_message($%){
        my $self = shift;
        my %message = @_;
        $message{message} .= "\n(Desconto na quota do grupo)" if($message{fromGroup} == 1);
        if($message{goPrint}){
                print `echo "$message{message}" | smbclient -M $message{login}`;
        } else {
                $message{message} =~ s/Valor\:(.)+\n//g;
                $message{message} =~ s/Uso\ de\ Quota\.\n/Impressao\ Cancelada\.\n/g;
                print `echo "$message{message}" | smbclient -M $message{login}`;
        };
        return $self;
}
[/código]

Aqui eu passo um hash contendo as informações necessárias ao usuário: nome do arquivo impresso,
no. de páginas, quota atual, etc.

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 identifique uma letra acentuada e a
converta para este formato (ex. para eu converter o "á"para "\240")?

ou existe algum modo de se tirar os acentos das letras (ex: "áÁÄ" = "aAA")?

Muitissímo obrigado,

Rodrigo Zadra

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


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