Hi,
I'm kind of struggling with the whole encoding thing as have a csv file that contains, when viewed in MS Outlook, the character(s) £ representing the £ sign.
I suppose what I don't know, is what character set this is, and what character set Outlook is using.
I am trying to use the file with the following code:
#!/usr/bin/perl use encoding 'utf8'; use Text::CSV; use strict; use warnings; my @survey; my $csv = Text::CSV->new ( { binary => 1 } ) or die "Cannot use CSV: " + .Text::CSV->error_diag (); open my $fh, "<:encoding(utf8)", "../export.csv" or die &error_alert; while ( my $row = $csv->getline( $fh ) ) { my $feedback = $row->[1]; push @survey, $feedback; } close $fh; open (my $output, ">:encoding(utf8)", "../surveydata.csv") or die &err +or_alert; shift @survey; foreach my $item (@survey) { my @data = split /\t/, $item; my $lastitem = pop @data; chomp $lastitem; $lastitem =~ s/"//g; foreach my $col (@data) { $col =~ s/"//g; print $output "\"$col\"\,"; } print $output "\"$lastitem\"\n"; }; close $output;
Am I right in thinking that I need to find the correct character set for the import - i.e. If the csv file contains the odd character, it is probably not utf8 and needs to be called in with the right character set?
Thanks for looking at this
MorayJ
In reply to Using encoding by MorayJ
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |