[Cascavel-pm] Substituição de string e gravação no arquivo
Thomas Britis
thomas em tcnet.com.br
Quinta Julho 27 09:35:54 PDT 2006
Também acho que dá pra se fazer usando open (ARQXML, "+<$local");
Thomas Britis wrote:
> Não seria necessário abrir dois filehandles??
> Ou fechar o primeiro depois de jogá-lo para a array (perigoso para
> arquivos grandes) e abrí-lo novamente como escrita.
> open (ARQXML, "<$local");
> @texto = <ARQXML>;
> close (ARQXML);
> open (ARQXML, ">$local");
>
> Isso deve resolver.
>
> Paola Montini wrote:
>
>>Pessoal,
>> Tenho um arquivo XML no qual existe a string SNAPSHOT na tag de
>>versão.Preciso encontrar essa tag dentro do arquivo e substituí-la pelo
>>número da versão
>>
>>salvando o arquivo com essa informação nova.
>> Fiz o script de teste abaixo, porém o que esta acontecendo, é
>>ele encontra a string SNAPSHOT, porém não grava nada no arquivo, pior
>>apaga o conteúdo do arquivo inteiro...
>>
>> Please o que estou fazendo de errado:
>>
>>
>>#! /usr/bin/perl
>>$local = "arquivoxml.xml";
>>open (ARQXML,"<$local");
>>$nome = SNAPSHOT;
>>@texto = <ARQXML>;
>>foreach $matriz (@texto)
>> {
>> if ($matriz =~ /$nome/)
>> {
>> print $matriz;
>> $matriz =~ s/$nome/Beta2006.2.1/g;
>> print ARQXML $matriz;
>> }
>>close (ARQXML);
>>
>>ps: sei que o comando de substituição tb está funcionando corretamente
>>pois quando peço apenas para substituir e "printar" em tela funciona, o
>>problema está realmente com o arquivo. Também é valido dizer que já
>>tentei abrir o arquivo com > e >> e acontece a mesma coisa.
>>
>>TKS galera
>>
>>
>>
>>bPaola Montini
>>YMF-Consultoria
>>Fone: 5010-9220
>>
>>
>>------------------------------------------------------------------------
>>
>>_______________________________________________
>>Cascavel-pm mailing list
>>Cascavel-pm em pm.org
>>http://mail.pm.org/mailman/listinfo/cascavel-pm
>
>
--
Thomas Storino Britis
TCNet Informatica e Telecomunicacoes LTDA
Mais detalhes sobre a lista de discussão Cascavel-pm