Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: enoeding iso 8859 issue within a datadump

by Anonymous Monk
on Oct 06, 2012 at 11:11 UTC ( #997616=note: print w/ replies, xml ) Need Help??


in reply to enoeding iso 8859 issue within a datadump

Note;: this is a great gerat chance f or me to learn alot about Perl, and the options and power of Mechanize.

Obvious lie is obvious


Comment on Re: enoeding iso 8859 issue within a datadump
Re^2: enoeding iso 8859 issue within a datadump
by Perlbeginner1 (Scribe) on Oct 06, 2012 at 11:48 UTC


    i can try the Text::CSV module too....

    The Text::CSV module provides functions for both parsing and producing CSV data. However, we'll focus on the parsing functionality here. The following code sample opens the prospects.csv file and parses each line in turn, printing out all the fields it finds.

    #!/usr/bin/perl use strict; use warnings; use Text::CSV; my $file = 'prospects.csv'; my $csv = Text::CSV->new(); open (CSV, "<", $file) or die $!; while (<CSV>) { if ($csv->parse($_)) { my @columns = $csv->fields(); print "@columns\n"; } else { my $err = $csv->error_input; print "Failed to parse line: $err"; } } close CSV;


    Running the code produces the following output:

    Name Address Floors Donated last year Contact Charlotte French Cakes 1179 Glenhuntly Rd 1 Y John Glenhuntly Pharmacy 1181 Glenhuntly Rd 1 Y Paul Dick Wicks Magnetic Pain Relief 1183-1185 Glenhuntly Rd 1 Y George Gilmour's Shoes 1187 Glenhuntly Rd 1 Y Ringo
    And by replacing the line:
    print "@columns\n";


    with:

    print "Name: $columns[0]\n\tContact: $columns[4]\n";


    we can get more particular about which fields we want to output. And while we're at it, let's skip past the first line of our csv file, since it's only a list of column names.

    #!/usr/bin/perl use strict; use warnings; use Text::CSV; my $file = 'prospects.csv'; my $csv = Text::CSV->new(); open (CSV, "<", $file) or die $!; while (<CSV>) { next if ($. == 1); if ($csv->parse($_)) { my @columns = $csv->fields(); print "Name: $columns[0]\n\tContact: $columns[4]\n"; } else { my $err = $csv->error_input; print "Failed to parse line: $err"; } } close CSV;


    Running this code will give us the following output:
    Name: Charlotte French Cakes Contact: John Name: Glenhuntly Pharmacy Contact: Paul Name: Dick Wicks Magnetic Pain Relief Contact: George<br> Name: Gilmour's Shoes Contact: Ringo




    well i can get some analogies what do you think!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://997616]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (15)
As of 2014-07-23 13:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (143 votes), past polls