[bcn-pm] manipular un fitxer canviant xifres negatives per un zero

Agud Pique, Enric eagud.q a tv3.cat
dll mar 17 01:44:43 PDT 2014


Hola gent,

una consulta. Tinc un fitxer que amb dades. Totes les dades estan en una sola columna. Vull convertir tots els números negatius en zero i guardar el resultat, tota la columna de nou. Estic fent servir el següent codi però no sé si vaig bé. Suposo que he de llegir linea a linea...fent un chomp($linea) i si detecta un numero inferior a zero que el canvii a zero, pero quan arribo en aquest apartat no sé si el codi detecta que el que li passo es un numero o no....

#!/usr/local/bin/perl
use autodie;

my $nombre = 'data.dat';
my $nombre2 = 'data2.dat';
open my $INFILE, '<', $nombre;
my $linea;
while ( $linea = <INFILE>) {
chomp($linea); 
if ($linea< 0) {
$linea==0    //aqui he de posar codi per convertir negatius a zero//
}
}
open my $OUTFILE, '>', $nombre2;
print   $OUTFILE "$linea";
close   $OUTFILE;

Gràcies

Enric


Més informació sobre la llista de correu Barcelona-pm