Acrescentando texto em arquivos (appending)
Neste capítulodo tutorial Perl nós iremos ver como acrescentar informação em arquivos existentes utilizando Perl.
No episódio anterior nós aprendemos como escrever em arquivos. Isso é muito útil quando estamos criando um arquivo, mas há casos onde nós desejamos manter o arquivo original, e apenas adicionar novas linhas a ele.
O caso mais comum é quando estamos escrevendo um arquivo de histórico, ou log.
Ao escrever
open(my $fh, '>', 'report.txt') or die ...
Abrimos um arquivo para ecrita utilizando o sinal >, que irá automaticamente deletar o conteúdo do arquivo, caso haja algum.
Se nós desejamos acrescentar algo ao final do arquivo nós devemos utilizar o sinal maior do que >>, como no exemplo abaixo:
open(my $fh, '>>', 'report.txt') or die ...
Ao invocar essa função, iremos abrir o arquivo para acrescentar informações nele, isso significa que o arquivo irá permanecer intacto e qualquer coisa que for impresso pelas funções print() e say() serão acrescentadas ao final.
Veja abaixo um exemplo completo:
use strict; use warnings; use 5.010; my $filename = 'report.txt'; open(my $fh, '>>', $arquivo) or die "Não foi possível abrir o arquivo '$arquivo' $!"; say $fh "Meu primeiro relatório escrito em perl"; close $fh; say 'pronto';
Se você executar esse script várias vezes, você verá que o arquivo irá crescer. Para cada vez que for executado, será acrescentado uma nova linha ao arquivo.

Published on 2013-04-23