não achei a solução ideal porque hoje é iso-8859-1 e amanhã vai ser o que ? vou alterar na mão isso ? <br clear="all"><br>[]s,<br><br><div>@webgenes<br>Marcio Ferreira<br><br></div><div><span style="font-family:sans-serif;line-height:16px"><span style="font-size:x-small">"<a style="text-decoration:none"><font color="#000000">Perl</font></a> lives as the 'toolbox for Unix' "</span></span></div>
<br>
<br><br><div class="gmail_quote">2010/9/22 Renato Santos <span dir="ltr"><<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Marcio PD,<div>Não entendi porque não disse que nao queria fazer assim,</div><div><br></div><div>é o jeito mais "certin" é deixar o perl se virar pra entregar o encoding certo pra vc.</div><div><br></div><div>Você apenas "informa" qual o encoding do conteudo que esta lendo e a magica está pronta.</div>
<div><br></div><div><br></div><div>Agora levando em consideração (não UTF16/32 ou outro encoding que os caracteres basicos [a-z,numeros,_,<,>] do xml são os mesmos bytes do ASCII)</div><div>Você pode ler uns 1000 bytes em UTF8 ou Latin1, bater uma expressão mais ou menos assim:</div>
<div>encoding\s*\=\s*\"?([^\"]+)\"?[\s\>] </div><div>pra "ler" a parte do "encoding" do XML e fazer o Open completo depois.</div><div><br></div><div>Depois que comecei a usar o open com :encoding(XXX) nunca mais tive problemas com essa desgraça que me atrapalhou por anos (rs, se é que posso falar em anos!)</div>
<div><div><div></div><div class="h5"><br><div class="gmail_quote">2010/9/21 Marcio Ferreira <span dir="ltr"><<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Resolvi meu problema, <div><br></div><div>Eu abri o XML com open '<:encoding(iso-8859-1)' mesmo e passei para o XML::Bare a string com o conteúdo do XML.</div><div><br></div><div><div>Não é a forma que eu gostaria de ter resolvido, mas me serviu.</div>
<div><br></div><div>Valeu</div><div><div></div><div><br>[]s,<br><br><div>@webgenes<br>Marcio Ferreira<br><br></div><div><span style="font-family:sans-serif;line-height:16px"><span style="font-size:x-small">"<a style="text-decoration:none"><font color="#000000">Perl</font></a> lives as the 'toolbox for Unix' "</span></span></div>
<br>
<br><br><div class="gmail_quote">2010/9/21 Andre Carneiro <span dir="ltr"><<a href="mailto:andregarciacarneiro@gmail.com" target="_blank">andregarciacarneiro@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Infelizmente eu não conheço nenhuma que seja eficiente . Você pode tentar o Encode::Guess como eu falei, ou tentar achar outra maneira. Aliás se achar, escreva um artigo e manda pro Thiago, pq com certeza será útil para todos... ;-)<div>
<br></div><div>Cheers!</div><div><br><br><div class="gmail_quote">2010/9/21 Marcio Ferreira <span dir="ltr"><<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>></span><div>
<div></div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Tenho ciência disso André, <div><br></div><div>pensei que houvesse uma solução mais óbvia que converter strings ou o arquivo antes de abri-lo.<div><br clear="all"><br>[]s,<br><br><div>@webgenes<br>Marcio Ferreira<br>
<br></div><div>
<span style="font-family:sans-serif;line-height:16px"><span style="font-size:x-small">"<a style="text-decoration:none"><font color="#000000">Perl</font></a> lives as the 'toolbox for Unix' "</span></span></div>
<br>
<br><br></div><div class="gmail_quote">2010/9/21 Andre Carneiro <span dir="ltr"><<a href="mailto:andregarciacarneiro@gmail.com" target="_blank">andregarciacarneiro@gmail.com</a>></span><div><div></div><div>
<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Problemas com codificação não são exclusivos do XML::Bare. Normalmente são problemas oriundos dos 'gênios' que constroem as 'apps', 'webservices', ou o 'diabo' que for, que 'cospem' o XML com cabeçalhos inconsistentes, codificação errada, codificação mista, etc. etc. etc. Isso eu posso falar pq lido com essa porcaria quase todo santo dia, e eu o XML::Bare e vários outros parsers. A melhor estratégia que eu pude implementar foi converter as codificações quando possível e traduzir os caracteres, mantendo uma tabela de tradução que cresce cada vez menos agora. <div>
<br></div><div>O ideal seria ter algo que detectasse a codificação de um caracter para corrigir diretamente, mas isso é muito difícil de implementar de forma eficiente, pelo que eu vejo. Tem algumas tentativas como o Encode::Guess. Mas por experiência própria não é sempre que funciona, e sinceramente não tive paciência e nem tempo pra testar isso direito... Fique a vontade para tentar.</div>
<div><br></div><div><br></div><div>Cheers!<br><div><br></div><div> <br><br><div class="gmail_quote">Em 21 de setembro de 2010 12:41, Nilson Santos Figueiredo Jr. <span dir="ltr"><<a href="mailto:acid06@gmail.com" target="_blank">acid06@gmail.com</a>></span> escreveu:<div>
<div></div><div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>2010/9/20 Marcio Ferreira <<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>>:<br>
</div><div>> só amanhã do trabalho, mas basicamente eu uso o XML::Bare para carregar o<br>
> XML, faço um trim nos abributos do XML, já que o XML::Bare não o faz.<br>
<br>
</div>Provavelmente o XML::Bare, por ser um parser mais "tosco", está<br>
assumindo que o conteúdo está em UTF8 e está setando a flag de UTF8 na<br>
string.<br>
<font color="#888888"><br>
-Nilson<br>
</font><div><div></div><div>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
</div></div></blockquote></div></div></div><br><br clear="all"><br>-- <br>André Garcia Carneiro<br>Analista/Desenvolvedor Perl<br>(11)82907780<br>
</div></div>
<br>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div></div></div><div><div></div><div><br><br clear="all"><br>-- <br>
André Garcia Carneiro<br>Analista/Desenvolvedor Perl<br>
(11)82907780<br>
</div></div></div>
<br>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div><br></div></div></div>
<br>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div><br><br clear="all"><br>-- <br></div></div>Renato Santos<br><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>
</div>
<br>_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br></blockquote></div><br>