Manipulação de Arquivos Orientada a Objetos
Publicado por Daniel Vinciguerra (última atualização em 24/02/2016)
[ Hits: 2.936 ]
Homepage: http://bivee.com.br
Download manipulando-arquivos.pl
Sabemos que Perl não é uma linguagem totalmente orientada a objetos e vejo muitas pessoas dizendo que trabalhar com o paradigma orientado a objetos em Perl é complicado ou que Perl fica impossível de ser lida.
A verdade é que a orientação a objetos em Perl é uma excelente prática e por muitas vezes faz com que seu código fique mais legível e organizado, fazendo com que você consiga reaproveitar seus códigos se você escrever suas aplicações da forma correta.
Abaixo vou mostrar de forma breve e simples como manipular arquivos usando a classe IO::File
#!/usr/bin/env perl
# 2016 (c) Daniel Vinciguerra
# carrega os pragmas mais comuns
use 5.10.0;
use strict;
use warnings;
use IO::File;
# constante
my $FILE_PATH = 'file';
# iniciando um novo objeto IO::File para escrita
my $fout = IO::File->new($FILE_PATH, "w");
if(defined $fout){
# escrevendo no arquivo
say $fout "Ola Perl, este é um exemplo de escrita em arquivo!";
$fout->close;
}
# verificando se o arquivo existe
say "Arquivo '${FILE_PATH}' encontrado!" if -e $FILE_PATH;
# iniciando um novo objeto IO::File para leitura
my $fin = IO::File->new($FILE_PATH, "r");
if(defined $fin){
# lendo do arquivo
say <$fin>;
$fin->close;
}
Eliminando caracteres indesejados
FTP – Script para adicionar e remover usuários via WEB
Rsync e Perl: Sincronização de arquivos com gestão de backup incremental integrada
Adiciona-Altera senhas/usuarios no sistema
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Acessando o terminal do seu PC pelo celular fora de casa
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Midia de instalação LM-21.3 não inicializa (0)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)









