Manipulação de Arquivos Orientada a Objetos
Publicado por Daniel Vinciguerra (última atualização em 24/02/2016)
[ Hits: 2.914 ]
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;
}
Listar arquivos de um diretório.
Script que remove palavras de um arquivo.
Rsync e Perl: Sincronização de arquivos com gestão de backup incremental integrada
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Assisti Avatar 3: Fogo e Cinzas (4)
Conky, alerta de temperatura alta (11)









