#!/usr/bin/perl
use strict;
use warnings;
use English qw( -no_match_vars );
use Text::CSV;
$OUTPUT_FIELD_SEPARATOR = "\n";
$OUTPUT_RECORD_SEPARATOR = "\n";
my $release_file = '../ecodata/releases.txt';
open my $release_fh, '<', $release_file
or die "Can't open release file $release_file: $OS_ERROR\n";
my $csv = Text::CSV->new({
auto_diag => 1,
binary => 1,
allow_loose_quotes => 1,
escape_char => '\\',
});
my %value;
# Header is 'TRI,Release#,ChemName,RegNum,Year,Pounds,Grams'
$csv->bind_columns(\@value{@{$csv->getline($release_fh)}});
while ($csv->getline($release_fh)) {
{
no warnings 'numeric';
if ($value{'Pounds'} == 0.0 and $value{'Grams'} == 0.0) {
warn "Release number $value{'Release#'} is weightless\n";
}
}
print $value{'TRI'},
$value{'Release#'},
$value{'ChemName'},
$value{'RegNum'},
$value{'Year'},
$value{'Pounds'},
$value{'Grams'};
}
close $release_fh;
exit 0;
Thank you, Tux.
|