I suspect that
toolic has the right idea. Your basic code is fine; I've tried it on my system and it works for me:
#!/usr/bin/perl -w
use strict;
use Data::Dumper;
# open a filehandle
# file being read from
while(<DATA>){
my @fields = split /,/;
my $field1 = $fields[0];
my $field2 = $fields[1];
print "$field1\t$field2\n";
}
__DATA__
"-0.500, 4.502e-6"
"-0.499, 4.474e-6"
"-0.498, 4.458e-6"
"-0.497, 4.445e-6"
"-0.496, 4.433e-6"
"-0.495, 4.421e-6"
gives for output
"-0.500 4.502e-6"
"-0.499 4.474e-6"
"-0.498 4.458e-6"
"-0.497 4.445e-6"
"-0.496 4.433e-6"
"-0.495 4.421e-6"
So the best bet is that you do, as your title says, have some invisible characters hiding in there. So follow
toolic's advice and you'll smoke them out.