[Cascavel-pm] Substituição de string e gravação no arquivo
Thomas Britis
thomas em tcnet.com.br
Quinta Julho 27 09:31:04 PDT 2006
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