Marcio PD,<div>Não entendi porque não disse que nao queria fazer assim,</div><div><br></div><div>é o jeito mais &quot;certin&quot; é deixar o perl se virar pra entregar o encoding certo pra vc.</div><div><br></div><div>Você apenas &quot;informa&quot; 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,_,&lt;,&gt;] 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*\&quot;?([^\&quot;]+)\&quot;?[\s\&gt;] </div><div>pra &quot;ler&quot; a parte do &quot;encoding&quot; 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><br><div class="gmail_quote">2010/9/21 Marcio Ferreira <span dir="ltr">&lt;<a href="mailto:marciodesouzaferreira@gmail.com">marciodesouzaferreira@gmail.com</a>&gt;</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 &#39;&lt;:encoding(iso-8859-1)&#39; 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 class="h5"><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">&quot;<a style="text-decoration:none"><font color="#000000">Perl</font></a> lives as the &#39;toolbox for Unix&#39; &quot;</span></span></div>



<br>
<br><br><div class="gmail_quote">2010/9/21 Andre Carneiro <span dir="ltr">&lt;<a href="mailto:andregarciacarneiro@gmail.com" target="_blank">andregarciacarneiro@gmail.com</a>&gt;</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">&lt;<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>&gt;</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">&quot;<a style="text-decoration:none"><font color="#000000">Perl</font></a> lives as the &#39;toolbox for Unix&#39; &quot;</span></span></div>






<br>
<br><br></div><div class="gmail_quote">2010/9/21 Andre Carneiro <span dir="ltr">&lt;<a href="mailto:andregarciacarneiro@gmail.com" target="_blank">andregarciacarneiro@gmail.com</a>&gt;</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 &#39;gênios&#39; que constroem as &#39;apps&#39;, &#39;webservices&#39;, ou o &#39;diabo&#39; que for, que &#39;cospem&#39; 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">&lt;<a href="mailto:acid06@gmail.com" target="_blank">acid06@gmail.com</a>&gt;</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 &lt;<a href="mailto:marciodesouzaferreira@gmail.com" target="_blank">marciodesouzaferreira@gmail.com</a>&gt;:<br>








</div><div>&gt; só amanhã do trabalho, mas basicamente eu uso o XML::Bare para carregar o<br>
&gt; 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 &quot;tosco&quot;, 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">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>Renato Santos<br><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>


</div>